【问题标题】:How do I kill a specific process running in the background from the command prompt?如何从命令提示符终止在后台运行的特定进程?
【发布时间】:2015-05-05 08:26:52
【问题描述】:

假设这是一台 Windows 7 机器 - 我们正在讨论 Windows 命令行上的批处理脚本。

想象一下,我想启动和停止两个在后台运行的不同进程,并在它们在后台运行时运行它们。例如:

START /B CMD /C tomcatA.bat
doSomeStuff
stopTomcatACmd
START /B CMD /C tomcatB.bat
doSomeStuff
stopTomcatBCmd

我正在尝试弄清楚如何实现stopTomcatBCmd。在 Linux 机器上,您可以只使用 killpid

我的问题是:如何杀死在 Windows 后台运行的特定进程?

【问题讨论】:

    标签: windows batch-file cmd kill


    【解决方案1】:

    我认为 taskkill 是您正在寻找的。 使用它,您可以通过其 ID 或映像名称(.exe 文件的名称)终止正在运行的进程。

    您可以在此页面阅读详细的使用说明: http://www.computerhope.com/taskkill.htm

    【讨论】:

      【解决方案2】:

      TaskKill 应该可以完成这项工作。你可以写下要杀死的任务的确切名称,即杀死所有firefox进程

      C:\>Taskkill /IM firefox.exe /F
      

      或者您可以通过编写Tasklist来检查特定任务的PID,然后通过提及它的PID来终止该任务,即

      C:\>Taskkill /PID 26356 /F
      

      【讨论】:

      • 每个脚本都有办法做到这一点吗?
      • 你说的是哪个脚本?
      • 请看问题,有两个不同的进程和两个不同的脚本。尽管应用名称相同,但每个脚本只需要终止自己的进程。
      【解决方案3】:

      对于这样的东西,您几乎总能找到一个实用程序,您可以将其用作 Sysinternals 套件的一部分。在这种情况下,我会推荐 PsKill:https://technet.microsoft.com/en-us/sysinternals/pskill

      Usage: pskill [-t] [\\computer [-u username [-p password]]] <process ID | name>
      

      示例:pskill notepad

      Mark 讨论 PsList 和 PsKill 用法的文章:http://windowsitpro.com/systems-management/pslist-and-pskill

      【讨论】:

      • 不确定是什么导致了投票失败,但我添加了一个示例来展示如何使用此工具
      猜你喜欢
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多