Wait-Process
Megvárja, amíg a folyamatok leállnak, mielőtt további bemenetet fogad.
Syntax
Name (Alapértelmezett)
Wait-Process
[-Name] <String[]>
[[-Timeout] <Int32>]
[<CommonParameters>]
Id
Wait-Process
[-Id] <Int32[]>
[[-Timeout] <Int32>]
[<CommonParameters>]
InputObject
Wait-Process
[[-Timeout] <Int32>]
-InputObject <Process[]>
[<CommonParameters>]
Description
A Várakozási folyamat parancsmag egy vagy több futó folyamat leállítására vár a bemenet elfogadása előtt.
A Windows PowerShell-konzolon ez a parancsmag letiltja a parancssort, amíg a folyamatok le nem állnak.
Megadhat egy folyamatot folyamatnév vagy folyamatazonosító (PID) alapján, vagy egy folyamatobjektumot a várakozási folyamat
Wait-Process csak a helyi számítógépen futó folyamatokon működik.
Példák
1. példa: Folyamat leállítása és várakozás
PS C:\> $nid = (Get-Process notepad).id
PS C:\> Stop-Process -Id $nid
PS C:\> Wait-Process -Id $nid
Ez a példa leállítja a Jegyzettömb folyamatot, majd megvárja a folyamat leállítását, mielőtt a következő paranccsal folytatódik.
Az első parancs a Get-Process parancsmaggal kéri le a Jegyzettömb folyamat azonosítóját. Az azonosítót a $nid változóban tárolja.
A második parancs a Stop-Process parancsmaggal állítja le a folyamatot a $nid tárolt azonosítóval.
A harmadik parancs Wait-Process használatával várja meg a Jegyzettömb folyamatának leállítását. A Wait-ProcessId paraméterével azonosítja a folyamatot.
2. példa: Folyamat megadása
PS C:\> $p = Get-Process notepad
PS C:\> Wait-Process -Id $p.id
PS C:\> Wait-Process -Name "notepad"
PS C:\> Wait-Process -InputObject $p
Ezek a parancsok három különböző módszert mutatnak be a várakozási folyamat megadására. Az első parancs lekéri a Jegyzettömb folyamatot, és a $p változóban tárolja.
A második parancs az Azonosító paramétert használja, a harmadik a Név paramétert, a negyedik parancs pedig az InputObject paramétert.
Ezek a parancsok ugyanazokkal az eredményekkel rendelkeznek, és felcserélhetők.
3. példa: Várjon egy adott időre a folyamatokra
PS C:\> Wait-Process -Name outlook, winword -Timeout 30
Ez a parancs 30 másodpercet vár, amíg az Outlook és a Winword folyamat leáll. Ha mindkét folyamat nem áll le, a parancsmag nem végződő hibát és parancssort jelenít meg.
Paraméterek
-Id
A folyamatok folyamatazonosítóit adja meg.
Több azonosító megadásához használjon vesszőket az azonosítók elválasztásához.
A folyamat PID-jének megkereséséhez írja be a Get-Process.
Paramétertulajdonságok
| Típus: | Int32[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | folyamatazonosító, ProcessId |
Paraméterkészletek
Id
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-InputObject
A folyamatobjektumok elküldésével adja meg a folyamatokat. Adjon meg egy változót, amely tartalmazza a folyamatobjektumokat, vagy írjon be egy parancsot vagy kifejezést, amely lekéri a folyamatobjektumokat, például a Get-Process parancsmagot.
Paramétertulajdonságok
| Típus: | Process[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
InputObject
| Position: | Named |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Name
A folyamatok folyamatneveit adja meg. Több név megadásához használjon vesszőket a nevek elválasztásához. A helyettesítő karakterek nem támogatottak.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | ProcessName |
Paraméterkészletek
Name
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Timeout
A parancsmag másodpercben megadott maximális időtartamát adja meg, amíg a megadott folyamatok leállnak. Ha ez az időköz lejár, a parancs nem végződő hibát jelenít meg, amely felsorolja a még futó folyamatokat, és véget vet a várakozásnak. Alapértelmezés szerint nincs időtúllépés.
Paramétertulajdonságok
| Típus: | Int32 |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | TimeoutSec |
Paraméterkészletek
(All)
| Position: | 1 |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
Process
A parancsmaghoz folyamatobjektumot is csövezhet.
Kimenetek
None
Ez a parancsmag nem hoz létre kimenetet.
Jegyzetek
Ez a parancsmag a System.Diagnostics.Process osztály WaitForExit metódusát használja. Erről a módszerről a Microsoft .NET-keretrendszer SDK-jában talál további információt.