Delen via


Wait-Process

Wacht totdat de processen zijn gestopt voordat u meer invoer accepteert.

Syntaxis

Wait-Process
    [-Name] <String[]>
    [[-Timeout] <Int32>]
    [<CommonParameters>]
Wait-Process
    [-Id] <Int32[]>
    [[-Timeout] <Int32>]
    [<CommonParameters>]
Wait-Process
    [[-Timeout] <Int32>]
    -InputObject <Process[]>
    [<CommonParameters>]

Description

De wait-process cmdlet wacht tot een of meer actieve processen zijn gestopt voordat invoer wordt geaccepteerd. In de Windows PowerShell-console onderdrukt deze cmdlet de opdrachtprompt totdat de processen zijn gestopt. U kunt een proces opgeven op basis van procesnaam of proces-id (PID) of een procesobject doorsluisen om te wachtproces.

wachtproces werkt alleen op processen die op de lokale computer worden uitgevoerd.

Voorbeelden

Voorbeeld 1: Een proces stoppen en wachten

PS C:\> $nid = (Get-Process notepad).id
PS C:\> Stop-Process -Id $nid
PS C:\> Wait-Process -Id $nid

In dit voorbeeld wordt het Kladblok-proces gestopt en wordt gewacht totdat het proces is gestopt voordat het doorgaat met de volgende opdracht.

De eerste opdracht maakt gebruik van de cmdlet Get-Process om de id van het Kladblok-proces op te halen. De id wordt opgeslagen in de variabele $nid.

De tweede opdracht maakt gebruik van de Stop-Process cmdlet om het proces te stoppen met de id die is opgeslagen in $nid.

De derde opdracht maakt gebruik van wachtproces om te wachten totdat het Kladblok-proces is gestopt. Hierbij wordt de parameter Id van Wait-Process gebruikt om het proces te identificeren.

Voorbeeld 2: Een proces opgeven

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

Deze opdrachten tonen drie verschillende methoden voor het opgeven van een proces dat moet worden wachtproces. Met de eerste opdracht wordt het Kladblok-proces opgeslagen in de $p variabele.

De tweede opdracht gebruikt de parameter Id, de derde opdracht gebruikt de parameter name en de vierde opdracht gebruikt de parameter InputObject.

Deze opdrachten hebben dezelfde resultaten en kunnen door elkaar worden gebruikt.

Voorbeeld 3: Wachten op processen voor een opgegeven tijd

PS C:\> Wait-Process -Name outlook, winword -Timeout 30

Met deze opdracht wordt 30 seconden gewacht totdat de Outlook- en Winword-processen zijn gestopt. Als beide processen niet worden gestopt, geeft de cmdlet een niet-afsluitfout en de opdrachtprompt weer.

Parameters

-Id

Hiermee geeft u de proces-id's van de processen. Als u meerdere id's wilt opgeven, gebruikt u komma's om de id's te scheiden. Als u de PID van een proces wilt vinden, typt u Get-Process.

Type:Int32[]
Aliassen:PID, ProcessId
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-InputObject

Hiermee geeft u de processen op door procesobjecten te verzenden. Voer een variabele in die de procesobjecten bevat of typ een opdracht of expressie waarmee de procesobjecten worden opgehaald, zoals de Get-Process cmdlet.

Type:Process[]
Position:Named
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Name

Hiermee geeft u de procesnamen van de processen. Als u meerdere namen wilt opgeven, gebruikt u komma's om de namen te scheiden. Jokertekens worden niet ondersteund.

Type:String[]
Aliassen:ProcessName
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Timeout

Hiermee geeft u de maximale tijd in seconden op dat deze cmdlet wacht tot de opgegeven processen worden gestopt. Wanneer dit interval verloopt, geeft de opdracht een niet-afsluitfout weer waarin de processen worden vermeld die nog actief zijn en eindigt de wachttijd. Er is standaard geen time-out.

Type:Int32
Aliassen:TimeoutSec
Position:1
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

Process

U kunt een procesobject doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Met deze cmdlet wordt geen uitvoer gegenereerd.

Notities

  • Deze cmdlet maakt gebruik van de methode WaitForExit van de klasse System.Diagnostics.Process. Zie de Microsoft .NET Framework SDK voor meer informatie over deze methode.