到目前为止,我一直在尝试创建一个连续的.bat文件,它将启动服务器文件,读取每一行,如果响应“服务器已经无响应”,那么bat将关闭文件并重新启动打开(这需要每隔一小时左右完成,我并不总是在电脑前)
我相信这是正确的代码,但我需要仔细检查一些技术娴熟的头脑,看看它是否正确。
@echo off
SETLOCAL DisableDelayedExpansion
FOR /F "usebackq delims=" %%A in (`"findstr rust_server/n ^^ "`) do (
set "myVar=%%A"
call :processLine myVar
)
goto :eof
:processLine
SETLOCAL EnableDelayedExpansion
set "line=!%1!"
set "line=!line:*:=!"
echo(!line!
Find /I /V "Unresponsive for 10"
taskkill /fi "WindowTitle eq rust_server*"
start /d "C:\Rust Server" rust_server.exe
ENDLOCAL
goto :eof
非常感谢任何想法/建议。
答案 0 :(得分:0)
@Echo off
Title SERVER RESTARTER (place with your rust_server exe)
color 1f
SET n=0
:Loop
SET /A n=n+1
echo Server Restarter
echo -----Restart Server Batch VERSION-----
taskkill /IM rust_server.exe
echo Opening rust_server.exe server again
rust_server.exe
if %n% EQU 60 (
exit
) Else if %n% LEQ 24 (
Goto Loop