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

File 如何从.BAT文件停止进程?,file,process,batch-file,File,Process,Batch File,所以我有一个从一个bat文件开始的过程。如何从另一个进程停止它?要终止您知道其名称的进程,请尝试: taskkill /IM notepad.exe 这将要求它关闭,但它可能会拒绝,提供“保存更改”等。如果您想强制杀死它,请尝试: taskkill /F /IM notepad.exe 当您从批处理文件启动一个进程时,它将作为一个单独的进程启动,而不会提示启动它的批处理文件(因为这将在这段时间内完成运行,父进程ID之类的东西对您没有帮助) 如果您知道进程名称,并且它在所有正在运行的进程中都是

所以我有一个从一个bat文件开始的过程。如何从另一个进程停止它?

要终止您知道其名称的进程,请尝试:

taskkill /IM notepad.exe
这将要求它关闭,但它可能会拒绝,提供“保存更改”等。如果您想强制杀死它,请尝试:

taskkill /F /IM notepad.exe

当您从批处理文件启动一个进程时,它将作为一个单独的进程启动,而不会提示启动它的批处理文件(因为这将在这段时间内完成运行,父进程ID之类的东西对您没有帮助)

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


如果它不是唯一的,您可能希望调查工作。这些子进程在终止时终止所有派生的子进程。

因为TASKKILL可能在某些windows Home/basic版本上不可用。这里有一些替代方案:

TSKILL processName

请记住,
processName
不应具有
.exe
后缀,并且限制为18个字符

另一个选项是
WMIC

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

wmic提供了比taskkill更大的灵活性。使用
wmic Path win32\u process get
可以查看可以筛选的可用文件

为什么不使用PowerShell

Stop-Process -Name notepad
如果您在批处理文件中:

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

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

以下是如何从.bat文件终止一个或多个进程

第一步。打开首选文本编辑器并创建新文件

第二步。要终止一个进程,请使用“taskkill”命令,并使用“/im”参数指定要终止的进程的映像名称。例如:

taskkill /im examplename.exe
taskkill /f /im somecorporateprocess.exe
taskkill /im examplename.exe
taskkill /im examplename1.exe
taskkill /im examplename2.exe
要“强制”终止进程,请使用“/f”参数,该参数指定强制终止进程。例如:

taskkill /im examplename.exe
taskkill /f /im somecorporateprocess.exe
taskkill /im examplename.exe
taskkill /im examplename1.exe
taskkill /im examplename2.exe
要终止多个进程,请使用进程名称对应的进程重复步骤2的第一部分。例如:

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

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


第四步。单击新创建的bat文件以运行它。

taskkill-im exename.exe
将强制终止进程。这就是你想要的吗?可能是像符咒一样的复制品。实际上,不带/F的选项要求程序很好地关闭。然后程序仍然可以决定根本不关闭。我有一个程序,当按下关闭按钮时,最小化为一个托盘图标,这正是发生的事情。/F选项强制退出。
taskkill/F/IM notepad.exe在大多数情况下对我来说更好
taskkill/F/IM notepad.exe
从没有保存对话框的任务中向我抛出错误。它们无法正常关闭,可能会发生不同的情况(即使对话框关闭后,程序也可能保持打开状态)。我也不希望在后台生成错误,所以我建议
/F/IM
,除非它是Word.exe或其他东西。