Wait-Process
Aguarda que os processos sejam interrompidos antes de aceitar mais entradas.
Syntax
Wait-Process
[-Name] <String[]>
[[-Timeout] <Int32>]
[<CommonParameters>]
Wait-Process
[-Id] <Int32[]>
[[-Timeout] <Int32>]
[<CommonParameters>]
Wait-Process
[[-Timeout] <Int32>]
-InputObject <Process[]>
[<CommonParameters>]
Description
Esse cmdlet não funciona no Linux ou no macOS.
O Wait-Process
cmdlet aguarda que um ou mais processos em execução sejam interrompidos antes de aceitar a entrada. No console do PowerShell, esse cmdlet suprime o prompt de comando até que os processos sejam interrompidos. Você pode especificar um processo por nome do processo ou PID (ID do processo) ou redirecionar um objeto de processo para Wait-Process
.
Wait-Process
funciona apenas em processos em execução no computador local.
Exemplos
Exemplo 1: Parar um processo e aguardar
Este exemplo interrompe o processo do Bloco de Notas e aguarda o processo ser interrompido antes de continuar com o próximo comando.
$nid = (Get-Process notepad).id
Stop-Process -Id $nid
Wait-Process -Id $nid
O Get-Process
cmdlet obtém a ID do processo do Bloco de Notas e o armazena na $nid
variável . Stop-Process
interrompe o processo com a ID armazenada em $nid
. Wait-Process
aguarda até que o processo do Bloco de Notas seja interrompido.
Exemplo 2: Especificando um processo
Este exemplo mostra três métodos diferentes de especificar um processo para Wait-Process
. O primeiro comando obtém o processo do Bloco de Notas e o armazena na $p
variável . O segundo comando usa o parâmetro Id , o terceiro comando usa o parâmetro Name e o quarto comando usa o parâmetro InputObject .
$p = Get-Process notepad
Wait-Process -Id $p.id
Wait-Process -Name "notepad"
Wait-Process -InputObject $p
Esses comandos têm os mesmos resultados e podem ser usados alternadamente.
Exemplo 3: Aguardar processos por um tempo especificado
Neste exemplo, Wait-Process
aguarda 30 segundos para que os processos do Outlook e do Winword sejam interrompidos. Se ambos os processos não forem interrompidos, o cmdlet exibirá um erro de não finalização e o prompt de comando.
Wait-Process -Name outlook, winword -Timeout 30
Parâmetros
-Id
Especifica as identificações de processos dos processos. Para especificar IDs múltiplas, use vírgulas para separá-las.
Para localizar o PID de um processo, digite Get-Process
.
Type: | Int32[] |
Aliases: | PID, ProcessId |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-InputObject
Especifica os processos enviando objetos de processo. Insira uma variável que contenha os objetos de processo ou digite um comando ou expressão que obtém os objetos de processo, como o Get-Process
cmdlet .
Type: | Process[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Especifica os nomes de processo dos processos. Para especificar vários nomes, use vírgulas para separar os nomes. Não há suporte para caracteres curinga.
Type: | String[] |
Aliases: | ProcessName |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Timeout
Especifica o tempo máximo, em segundos, que esse cmdlet aguarda que os processos especificados sejam interrompidos. Quando esse intervalo expira, o comando exibirá um erro de não finalização que lista os processos que estão em execução e termina a espera. Por padrão, não há tempo limite.
Type: | Int32 |
Aliases: | TimeoutSec |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Você pode redirecionar um objeto de processo para esse cmdlet.
Saídas
None
Esse cmdlet não retorna nenhuma saída.
Observações
Esse cmdlet usa o método WaitForExit da classe System.Diagnostics.Process .
Ao contrário
Start-Process -Wait
de ,Wait-Process
só aguarda os processos identificados.Start-Process -Wait
aguarda a saída da árvore de processo (o processo e todos os seus descendentes) antes de retornar o controle.