需要现有批处理文件的帮助

需要现有批处理文件的帮助

我需要一个可以保持运行的批处理文件,如果“Unturned.exe”未运行START "" /B "C:\Users\Administrator\Desktop\1.lnk",则执行,然后空闲、扫描,并等待它再次循环关闭。

这是我现在正在使用的,但是它和服务器之间没有任何通信,无法让人们知道它即将重新启动,而且我现在只运行一台服务器。

请注意,服务器在 55 分钟、57 和 59 分钟处有服务器消息。服务器将在 1 小时后自动关闭。我只希望脚本扫描,Unturned.exe如果它未运行,则从桌面快捷方式启动。我不需要它像我的旧脚本一样倒计时,只需要它在后台运行,所以我不必担心它。

@echo off
cls
color B


:loop

echo ===========================================================
echo ===========================================================
echo ======== UNTURNED SERVER RESTART SCRIPT By FATBOI =========
echo ===========================================================
echo ===========================================================

@timeout /T 1 /nobreak >NUL
echo ===========================================================
echo Killing all servers for restart...
echo ===========================================================

@timeout /T 1 /nobreak >NUL
taskkill /f /im Unturned.exe
echo ===========================================================
echo All servers have been killed
echo ===========================================================

echo ===========================================================
echo Servers starting...
echo ===========================================================
start "" /b "C:\Users\Administrator\Desktop\1.lnk"
@timeout /T 30 /nobreak >NUL


cls

echo ===========================================================
echo ===========================================================
echo ===== UNTURNED SERVER RESTART SCRIPT By JoeCooper2015 =====
echo ===========================================================
echo ==================Server Restart Time======================
echo ===========================================================
time /T
echo ===========================================================
echo ===========================================================

REM Every 4 hours kill and start servers. note 1H = 3600 seconds
REM use timeout then goto loop
@timeout /T 3600 /nobreak

goto loop

答案1

需要现有批处理文件的帮助

我需要一个可以保持运行的批处理文件,如果“Unturned.exe”未运行START "" /B "C:\Users\Administrator\Desktop\1.lnk",则执行,然后空闲、扫描,并等待它再次循环关闭。

尝试下面的脚本并测试以确认它按预期工作,并确认这可以解决问题。

笔记: 如果在终止进程后运行命令后等待 30 秒的时间START "" /B "C:\Users\Administrator\Desktop\1.lnk"不够长Unturned.exe,那么您可能需要增加该数字以添加超过 30 秒的时间(例如 60 秒)。也许有时 30 秒就足够了,但有时当服务器负载较大时,时间就不够了。如果您仍然遇到问题,请考虑这一点。

@ECHO OFF
CLS
COLOR B

:loop
PING -n 5 127.0.0.1 >NUL
TASKLIST | FINDSTR /I "Unturned.exe"
IF ERRORLEVEL 1 (GOTO StartUnturn) ELSE (GOTO loop)

:StartUnturn
ECHO ===========================================================
ECHO Servers starting...
ECHO ===========================================================
START "" /B "C:\Users\Administrator\Desktop\1.lnk"
PING -n 30 127.0.0.1 >NUL
GOTO loop

其他阅读材料和资源

相关内容