使用批处理自动重新启动程序

时间:2016-04-11 21:13:57

标签: batch-file

我当前的程序运行其任务,然后关闭自己,批处理文件然后在60秒后重新启动它。问题是,有时程序无法自行关闭,一切都被卡住了。

我需要修改脚本,因此如果程序没有关闭,它将在5分钟后自动重启。

:launch

START /wait program.exe 

rem delay 60 seconds
ping 127.0.0.1 -n 60 > nul

GOTO :launch

1 个答案:

答案 0 :(得分:1)

你可以这样做:

例如,如果calc.exe进程正在运行,则每5分钟检查一次。

@echo off
Mode con cols=55 lines=3
:CheckRunningProcess
Cls
echo(
Set "MyProcess=calc.exe"
Title Check for Running Process "%MyProcess%"
tasklist /NH /FI "imagename eq %MyProcess%" 2>nul |find /i "%MyProcess%" >nul
If not errorlevel 1 ( Color 0A & Echo                  "%MyProcess%" is running
) else (Color 0C & echo   "%MyProcess%" is not running, so we start it right now & start "" "%MyProcess%")
TimeOut /T 300 /NoBreak >nul
Goto :CheckRunningProcess