尝试每3小时自动重启一次Minecraft服务器

时间:2019-07-25 23:24:39

标签: batch-file minecraft

我使用了该线程中最佳答案中提供的代码:Need auto-restart script in batch for minecraft server

但是,我不确定应该何时运行选择功能。

此外,我宁愿没有选择权。我希望服务器仅给出60秒的提示时间,它将重新启动,然后执行重新启动。

任何帮助将不胜感激!

这是上一个答案的代码:

@echo off
title minecraft-server-1.8.3
color 0A
prompt [server]:
cls

:start
echo loading server...
java -Xms3G -Xmx3G -jar minecraft_server.1.8.3.jar nogui
cls

:choice
set /P a=do you want to restart[Y/N]?
if /I "%a%" EQU "Y" goto :restart
if /I "%a%" EQU "N" goto :stop
goto :choice


:restart
cls
echo server will restart
TIMEOUT /T 5
cls
goto :start

:stop

cls
echo closing server
TIMEOUT /T 5
exit

1 个答案:

答案 0 :(得分:0)

欢迎堆栈溢出。 正如@Mofi在评论中提到的那样,您可以使用TIMEOUT创建等待语句 您可能想要的脚本如下所示:

:start
echo loading server...
java -Xms3G -Xmx3G -jar minecraft_server.1.8.3.jar nogui
cls

REM I recommend NOT using TIMEOUT /T for the main wait, this way you can skip it and initiate a restart immediately 

TIMEOUT 10720

REM 3 hours minus 60 seconds to allow for 60 second restart notification

cls
echo server will restart
TIMEOUT /T 60
cls
goto :start


(由于您似乎不太熟悉批量处理,因此REM用于注释行)

要回答有关:choice部分为何的问题: 它是在:start部分之后启动的,可让您(Y)重新启动或(N)停止服务器