Como pausar um script PowerShell até que algum evento externo tenha ocorrido?
-
23-09-2019 - |
Pergunta
Estou usando um script PowerShell 1 para iniciar um programa Python e quero pausar o PowerShell até que o Python tenha concluído seu trabalho. (Eu tenho a propriedade completa do arquivo python.) Qual é a melhor maneira de fazer isso?
Solução
Veja a ajuda no cmdlet de procedimento de espera:
man Wait-Process -full
start-process notepad -PassThru | Wait-Process
Outras dicas
Você pode obter o objeto de processo ou ID com o comando Get-Process para obter o objeto Process ou você pode obtê-lo como eu mostrar abaixo, qualquer um funcionará.
você pode usar o pid e ligar
$proc = [System.Diagnostics.Process]::GetProcessById($PID)
while(-not $proc.HasExited) {[System.Threading.thread]::sleep(500) }
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow