jac*_*cus 18 powershell process wait
我想同时在PowerShell中执行多个外部脚本,然后等待所有这些脚本完成后再继续.目前我正在使用'start-process -NoNewWindow ...'命令行开关,它循环遍历所有子进程,但随后终止.
我找到了很多方法等待1个进程完成(这显然是微不足道的)但是它们似乎都不能解决我的问题.
在PowerShell中拥有UNIX版本的等价物肯定是我想要的.
Kei*_*ill 31
并且不要忘记可能是为多个进程执行此操作的最直接的方法 - Wait-Process例如:
$procs = $(Start-Process Notepad.exe -PassThru; Start-Process Calc.exe -PassThru)
$procs | Wait-Process
Run Code Online (Sandbox Code Playgroud)
您是否检查了PowerShell v2中的后台作业功能?
$job = Start-Job -Name "Proc1" -ScriptBlock { Sleep 10000 }
Wait-Job -Job $job
Run Code Online (Sandbox Code Playgroud)
此外,Start-Process有一个名为-wait的参数.指定后,Start-Process将等待子进程退出.
Start-Process -FilePath calc.exe -Wait
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21154 次 |
| 最近记录: |