如果在名称中包含点,则检查进程是否存在的批处理脚本不起作用

时间:2016-04-13 08:42:41

标签: c# shell batch-file

@echo off

 tasklist /nh /fi "imagename eq Dummy.Platform.Crashing.exe"  | 

find /i "Dummy.Platform.Crashing.exe" >nul &&

 (
 echo Crashed is running
 ) ||
 (
echo Crashed is not running
 )

 pause>nul

上述代码不起作用。但如果我们将进程名称设为imagename eq notepad.exe,则可以正常工作。

需要一些帮助。

1 个答案:

答案 0 :(得分:0)

问题似乎不是点,而是文件名长度:

任务列表给了我Dummy.Platform.Crashing.e而不是Dummy.Platform.Crashing.exe和

tasklist /nh /fi "imagename eq Dummy.Platform.Crashing.exe"  | find /i "Dummy.Platform.Crashing.e"

工作正常。

也许用/ FO LIST替换/ nh:

tasklist /FO LIST /fi "imagename eq Dummy.Platform.Crashing.exe"  | find /i "Dummy.Platform.Crashing.exe"