尝试每 3 小时自动重启一次我的世界服务器

问题描述 投票:0回答:1

我使用了此线程中最佳答案中提供的代码: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
batch-file minecraft
1个回答
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) 停止服务器

© www.soinside.com 2019 - 2024. All rights reserved.