【问题标题】:Stopping a Sub process without closing the Service停止子进程而不关闭服务
【发布时间】:2015-02-24 00:42:25
【问题描述】:

我正在使用 PowerShell start-process 命令将 ps1 文件作为服务运行。以下是启动此过程的行:

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

如何在不完全关闭 PowerShell 服务的情况下停止“仅此执行”,因为它可能同时用于其他进程。

【问题讨论】:

    标签: powershell service


    【解决方案1】:

    如果您使用带有-PassThru 标志的Start-Process,您可以获得PID,如下所示:

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

    然后像这样关闭进程:

    Stop-Process $app.Id
    

    问候

    【讨论】:

    • 似乎是一个解决方案。快速提问。进程ID是否保持不变?另外,我如何将它传递给另一个脚本,我将使用它来执行这个命令“Stop-Process $app.Id”
    • @nitinsh99 是的,进程 ID 在运行时不会更改。您可以将 PID 作为参数传递给另一个脚本(不知道您想做什么,我只能提供一般信息)
    • 我的最终目标是运行一个 powershell 脚本来停止我通过运行上述命令启动的进程的执行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-15
    • 1970-01-01
    相关资源
    最近更新 更多