我有以下windows批处理代码:
for %%i in (iidbms iigcc iigcd dmfacp dmfrcp rmcmd qwerty) do (
tasklist | findstr /i %%i
echo %errorlevel%
if %errorlevel% == 0 (echo %%i ok process found %errorlevel%)
if %errorlevel% == 1 (echo %%i no process found %errorlevel%)
)
但它并没有像我预期的那样奏效。
所有的名称进程iidbms,iigcc、iigcd和dmfacp都是真实的,并且它们被发现了,而qwerty是一个虚构的进程,不应该找到它,所以应该打印“未找到进程1”,但它没有,它总是打印0。
但我注意到的是,如果我从dos提示符运行任务列表|findstr/I qwerty
,紧接着%errorlevel%
=1。
什么样的答案可以是或者更好?