Bat文件将读取服务器文件,然后根据服务器文件的输出重新启动

时间:2014-01-31 13:31:06

标签: windows batch-file

到目前为止,我一直在尝试创建一个连续的.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

非常感谢任何想法/建议。

1 个答案:

答案 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
相关问题