在Powershell中使用start-process和-wait命令

脚本之家收集整理的这篇文章主要介绍了在Powershell中使用start-process和-wait命令脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是Power shell的新手,并没有太多的编程背景,只是试图将它用于软件包装.无论如何,我发现了带-Wait参数的start-process命令,它适用于大多数事情.我注意到的是,它不仅等待你指定的进程,它等待任何子进程,即使在主进程不再运行之后.通常这很好,但我有一个奇怪的情况.我正在使用start-process运行复杂的Oracle批处理文件.批处理文件最终运行setup.exe,这是我真正想要等待的,但是其他进程也会产生永不停止.因此,如果我使用-wait参数,即使setup.exe不再运行,脚本也不会停止.我发现的最接近的是使用这个:
  1. saps -FilePath "Pathconfig.bat" -ArgumentList "arguments"
  2. Start-Sleep -s 10
  3. Wait-Process -Name "setup"

这有效,但我认为没有使用超时命令会有更好的方法.有任何想法吗?

解决方法

你可以轻松使用这个命令:
  1. $myprocss = Start-Process "powershell" -PassThru
  2. $myprocss.WaitForExit()

当进程结束时,此命令将继续.

总结

以上是脚本之家为你收集整理的在Powershell中使用start-process和-wait命令全部内容,希望文章能够帮你解决在Powershell中使用start-process和-wait命令所遇到的程序开发问题。

原文地址:https://www.cnblogs.com/albert-/p/12693887.html