【发布时间】:2013-06-06 16:31:59
【问题描述】:
我有一个非常简单的批处理文件,但有一个非常烦人的问题。我试图通过它的 TASKKILL 使用它的图像名称 (/IM) 来停止一个进程。问题是我有两个相同的图像名称,唯一的区别是一个大写,另一个不是。我只想杀死所有小写的进程。这可能吗?
【问题讨论】:
标签: variables batch-file cmd case case-sensitive
我有一个非常简单的批处理文件,但有一个非常烦人的问题。我试图通过它的 TASKKILL 使用它的图像名称 (/IM) 来停止一个进程。问题是我有两个相同的图像名称,唯一的区别是一个大写,另一个不是。我只想杀死所有小写的进程。这可能吗?
【问题讨论】:
标签: variables batch-file cmd case case-sensitive
@ECHO OFF
SETLOCAL
FOR /f "tokens=2" %%i IN (
' tasklist ^| find "ccc.exe" '
) DO SET pid=%%i
IF DEFINED pid ECHO TASKKILL /pid %pid%
这批应该按你的要求做。我只是使用ccc 作为测试 - ccc.exe 不存在(没有输出)CCC.exe 存在 - 更改为大写时显示CCC.exe 的 PID。
如果可执行文件名称包含空格、逗号、分号等,您需要将 tokens= 更改为 3 甚至更多。需要知道准确的名称以提供准确的详细信息。
将简单地显示它建议杀死的 PID。验证后去掉ECHO即可激活。
tasklist /fi "imagename eq whatever"
应该为您列出目标 PID。
【讨论】: