2015-02-23 103 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

相關問題