bat脚本中常用%errorlevel%表达上一条命令的返回值,即命令执行状态码、也称命令退出码
一般上一条命令的执行结果返回的值只有两种,0和非0 (如常见的1,2,4,5,9009等等),0一般会被视为成功,非0为失败或者异常
对于9009,在cmd中经常会发生输入的命令错误,或者不存在的命令,这时就会返回9009这种状态码,
10秒轮询
:start
choice /t 10 /d y /n >nul
tasklist|find /i " WeChat.exe"
if %errorlevel%==0 (
echo 微信已存在
) else (
echo 微信不存在,启动
start D:\WeChat\WeChat.exe
)
goto start
:start
choice /t 10 /d y /n>nul
tasklist|find /i " WeChat.exe"
if %errorlevel%==0 (
echo wechat start
) else (
echo wechat not
start D:\WeChat\WeChat.exe
)
goto start
简单粗暴
:Restart
start /i /wait D:\WeChat\WeChat.exe
start /i /wait D:\WXWork\WXWork.exe
goto Restart
:Restart
tasklist|find /i " WeChat.exe" || start /d "D:\WeChat\" WeChat.exe && start /d "D:\WeChat\" WeChat.exe
goto Restart
直接点
:Restart
start /wait C:\pan\软件\WM系统服务器009\WM服务器程序.exe
goto Restart