2015-02-23 99 views
0

我正在使用PowerShell start-process命令将ps1文件作为服务运行。下面是该行开始这一过程:在不关闭服务的情况下停止子进程

start-process PowerShell.exe -arg C:\scripts\scrtip_name.ps1 -WindowStyle Hidden 

如何停止“只是这EXECTUTION”没有完全关闭PowerShell的服务,因为它可能会在同一时间被用于其它进程。

回答

0

你可以得到PID如果使用Start-Process-PassThru标志是这样的:

$app = start-process PowerShell.exe -arg C:\scripts\scrtip_name.ps1 -WindowStyle Hidden - PassThru 

然后关闭这样的过程:

Stop-Process $app.Id 

问候

+0

似乎是一个解决方案。快速提问。进程ID是否保持不变?另外,如何将它传递给另一个脚本,我将使用它来执行此命令“Stop-Process $ app.Id” – nitinsh99 2015-02-23 16:29:02

+0

@ nitinsh99是,进程ID在运行时不会更改。您可以将PID作为参数传递给另一个脚本(不知道您想要做什么,我只能给出一般信息) – Paul 2015-02-23 16:30:51

+0

我的最终目标是运行powershell脚本来停止执行上面提到的运行启动的进程命令。 – nitinsh99 2015-02-23 16:42:29

相关问题