我想检查一个进程是否正在运行?
如果进程没有运行,那么我执行它(在这个例子中,我使用进程名称= calc.exe 的计算器)
我启动了批处理脚本,但我相信我有语法问题!

@echo off
Set MyProcess=calc.exe
echo %MyProcess%
pause
for /f "tokens=1" %%i In ('tasklist /NH /FI "imagename eq %MyProcess%"') do set ff=%%i
echo %ff%
If /i %ff%==%MyProcess% (Echo %ff% est en cours d^'execution) Else (Start %MyProcess%)
pause

最佳答案

这是使用您的代码作为基础的另一种方法:

@echo off
Set "MyProcess=calc.exe"
echo "%MyProcess%"
tasklist /NH /FI "imagename eq %MyProcess%" 2>nul |find /i "%MyProcess%" >nul
If not errorlevel 1 (Echo "%MyProcess%" est en cours d^'execution) else (start "" "%MyProcess%")
pause

关于batch-file - 检查进程是否正在运行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23266509/

10-10 12:45