如何杀死除当前正在运行的所有batch file

如何运行一个batch file,该文件除了正在执行任务kill命令的其他cmd.exes之外,还运行其他所有的cmd.exes?

结合这2个线程:

  1. 如何从命令行获取PID,通过用户名和图像名称过滤
  2. 如何从Windows的命令提示符获得自己的进程PID

你可以在一个简单的cmd文件( akillfile.cmd )中写下类似的东西

 title=dontkillme FOR /F "tokens=2 delims= " %%A IN ('TASKLIST /FI ^"WINDOWTITLE eq dontkillme^" /NH') DO SET tid=%%A echo %tid% taskkill /F /IM cmd.exe /FI ^"PID ne %tid%^" 

复制cmd.exe,将其重命名为a.exe,然后在批处理文件中使用此命令:启动a.exe / k taskkill / f / im cmd.exe