2012-06-20 3 views
2

Когда я выполняю $job = Start-Job { dir }, а затем Receive-Job $job в консоли PowerShell, я получаю нормальный выход. Но когда я делаю аналогичный сценарий .ps1 и запускаю его, нет выхода. Другие команды работают правильно. Как получить результат работы в скриптах?PowerShell Receive-Job не работает в скрипте

ответ

2

Вы должны ждать, пока работа, чтобы закончить:

Start-Job { dir } | Wait-Job | Receive-Job 
+0

Спасибо за конвейерная образца. –

3

Просто попробуйте выполнить задание до получения.

$job = Start-Job { dir } 
Wait-Job $job | out-null 
receive-job $job 

другой путь

$job = Start-Job { dir } 
while ($job.state -ne "Completed") {} 
receive-job $job 
Смежные вопросы