我想在PowerShell中同时执行多个外部脚本,然后等待它们全部执行完毕后再继续。目前我使用的是'start-process -NoNewWindow ...‘在所有子进程中循环,然后终止的命令小程序。
我已经找到了许多方法来等待一个进程完成(这显然是微不足道的),但它们似乎都不能作为我的问题的解决方案。
在PowerShell中拥有UNIX version的等价物肯定是我正在寻找的。
发布于 2011-02-14 23:44:13
别忘了可能是多进程中最直接的方法-- Wait-Process
:
$procs = $(Start-Process Notepad.exe -PassThru; Start-Process Calc.exe -PassThru)
$procs | Wait-Process
发布于 2011-02-14 17:48:58
您是否检查了PowerShell v2中的后台作业功能?
$job = Start-Job -Name "Proc1" -ScriptBlock { Sleep 10000 }
Wait-Job -Job $job
此外,Start-Process有一个名为-wait的参数。指定时,Start-Process将等待子级退出。
Start-Process -FilePath calc.exe -Wait
https://stackoverflow.com/questions/4990488
复制相似问题