我为我的Minecraft服务器制作了自定义启动脚本,因此我可以使用更多RAM。 停止服务器时,它会询问您是否要重新启动或是否要停止。 如果你在20秒后没有回答,我无法自动重启它 (在崩溃的情况下)。请帮忙。
@echo off
title minecraft-server-1.8.3
color 0A
prompt [server]:
cls
:start //starts the server
echo loading server...
java -Xms3G -Xmx3G -jar minecraft_server.1.8.3.jar nogui
cls
[code to restart the server when it didn't get an anwser in 20sec]
:choice //what to do when
set /P a=do you want to restart[Y/N]? the server stops
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
答案 0 :(得分:2)
而不是set /p
使用choice
:
choice /c YN /t 20 /d Y /m "Do you want to restart "
/c YN
说明了答案集(Y或N,顺便说一下,不区分大小写)。/t 20
表示超时为20秒。/d Y
表示超时到期后的默认答案Y. /m "..."
说明提示。 choice
将errorlevel
设置为输入的索引(Y:1,N:2),以检查用户输入的使用情况:
if %errorlevel% equ 1 goto :restart
if %errorlevel% equ 2 goto :stop
您可以在http://ss64.com/nt/choice.html或choice
choice/?
的更多信息