如何从.BAT文件中停止进程?

时间:2010-05-22 16:26:09

标签: file process batch-file

所以我有一个流程,我从一个bat文件开始。如何阻止它?

7 个答案:

答案 0 :(得分:38)

要终止您知道姓名的流程,请尝试:

taskkill /IM notepad.exe

这将要求它关闭,但它可能会拒绝,提供“保存更改”等。如果你想强行杀死它,请尝试:

taskkill /F /IM notepad.exe

答案 1 :(得分:4)

由于TASKKILL可能在Windows的某些Home / basic版本中不可用,所以有一些替代方案:

TSKILL processName

TSKILL PID

请注意,processName不应包含.exe后缀,且不得超过18个字符。

另一个选项是WMIC

wmic Path win32_process Where "Caption Like 'MyProcess.exe'" Call Terminate

wmic提供比taskkill更多的灵活性。使用wmic Path win32_process get,您可以看到可以过滤的可用文件。

答案 2 :(得分:1)

当您从批处理文件启动进程时,它作为一个单独的进程启动,没有提示启动它的批处理文件(因为这将在此期间完成运行,像父进程ID这样的东西将无济于事你)。

如果您知道进程名称,并且它在所有正在运行的进程中都是唯一的,则可以使用taskkill,就像@IVlad在评论中建议的那样。

如果它不是唯一的,您可能需要查看作业。它们在终止时终止所有生成的子进程。

答案 3 :(得分:0)

为什么不使用PowerShell?

Stop-Process -Name notepad

如果您在批处理文件中:

powershell -Command "Stop-Process -Name notepad"
powershell -Command "Stop-Process -Id 4232"

答案 4 :(得分:0)

taskkill / F / IM notepad.exe 这是从任务管理器中删除任务的最佳方法。

答案 5 :(得分:0)

这是如何从.bat文件中杀死一个或多个进程。

步骤1.打开首选的文本编辑器并创建一个新文件。

步骤2。要杀死一个进程,请使用'taskkill'命令,并带有'/ im'参数,该参数指定要终止的进程的映像名称。示例:

taskkill /im examplename.exe

要“强制”杀死进程,请使用“ / f”参数,该参数指定强制终止进程。示例:

taskkill /f /im somecorporateprocess.exe

要终止多个进程,请冲洗并重复步骤2的第一部分。示例:

taskkill /im examplename.exe
taskkill /im examplename1.exe
taskkill /im examplename2.exe

taskkill /f /im examplename.exe
taskkill /f /im examplename1.exe
taskkill /f /im examplename2.exe

步骤3.使用.bat扩展名将文件保存到所需位置。

步骤4.单击新创建的bat文件以运行它。

答案 6 :(得分:0)

您可以制作两个批处理文件。一个名为 runtaskkill.bat,另一个名为 taskkillapp.bat。在文件 runtaskkill.bat 中添加以下代码:

call runtaskkill.bat [filenamehere]

然后到 taskkill.bat:

taskkill /f /im %1

只要确保两个文件在同一个目录(文件夹)中即可。

相关问题