Batch file 批处理文件,如果已运行,则运行下一个程序
基本上,我刚才有一个简单的批处理脚本,可以多次启动一个程序,我们称它为1.exe,1.exe将启动20次,然后在%秒后被终止(由命令行参数指定) 我需要做的是,如果1.exe已经在运行,则改为启动2.exe,如果2.exe和1.exe已经在运行,则改为启动3.exe,依此类推 我刚才真正掌握的所有代码都是Batch file 批处理文件,如果已运行,则运行下一个程序,batch-file,Batch File,基本上,我刚才有一个简单的批处理脚本,可以多次启动一个程序,我们称它为1.exe,1.exe将启动20次,然后在%秒后被终止(由命令行参数指定) 我需要做的是,如果1.exe已经在运行,则改为启动2.exe,如果2.exe和1.exe已经在运行,则改为启动3.exe,依此类推 我刚才真正掌握的所有代码都是 Timeout /t 20 /nobreak >nul echo. taskkill /F /IM %programname% echo. pause >nul 以及1.exe的
Timeout /t 20 /nobreak >nul
echo.
taskkill /F /IM %programname%
echo.
pause >nul
以及1.exe的启动
非常感谢您的帮助。下面的批处理代码:如果1.exe已在运行,则启动2.exe;如果2.exe已在运行,则启动3.exe,依此类推:
for /L %%i in (1,1,20) do (
for /F "skip=3" %%e in ('tasklist /fi "imagename eq %%i.exe"') do (
if "%%e" equ "%%i.exe" set lastExe=%%i
)
)
set /A lastExe+=1
%lastExe%.exe
几个问题:1。可执行文件真的被称为
1.exe
,2.exe
等吗。。。有没有一种简单的方法来重复他们的名字?2.您是否需要只运行一次2.exe
,或者1.exe
在任何时间点都没有运行?