Как приостановить сценарий Powershell, пока не произойдет какое-то внешнее событие? - PullRequest
4 голосов
/ 02 марта 2010

Я использую скрипт Powershell 1 для запуска программы на Python и хочу приостановить Powershell, пока Python не завершит свою работу. (Я полностью владею файлом Python.) Как лучше всего это сделать?

Ответы [ 2 ]

6 голосов
/ 02 марта 2010

Посмотрите справку по командлету Wait-Process:

man Wait-Process -full
start-process notepad -PassThru | Wait-Process
0 голосов
/ 02 марта 2010

вы можете получить объект Process или ID с помощью командлета get-process, чтобы получить объект процесса, или вы можете получить его, как показано ниже, либо будет работать.

Вы можете использовать PID и позвонить

$proc = [System.Diagnostics.Process]::GetProcessById($PID)
while(-not $proc.HasExited) {[System.Threading.thread]::sleep(500) }
...