基本上我想做的是启动Bukkit服务器并修改ram用法,并设置批处理脚本,以便在服务器停止时,它会在批处理文件的开头重新启动,但是有一个菜单包含定时默认选项,可自动重新启动服务器。第二个选项将允许我中断批处理文件,以防止服务器停止后再次启动。
我希望脚本启动的是:"C:\program files\Java\jre7\bin\java.exe" -Xincgc -Xmx4G -jar "craftbukkit.jar"
所以基本上有一个像这样的菜单:
press 1 to start bukkit, press 2 to exit the script.
选项一将定时自动启动。
我能够通过菜单获得那么多,并且它自动启动它,但是在我在Bukkit中发出停止命令后,它只是退出,我无法弄清楚如何让它在开始时重新启动的脚本。
这是工作菜单,但不是程序结束后开始回到开头,
:start
choice /c:CN /n /m "bukkit will start in 5 seconds. Press to restart Now, or C to exit" /t:5 /d:N
if errorlevel 2 ("C:\program files\Java\jre7\bin\java.exe" -Xincgc -Xmx4G -jar "craftbukkit.jar" ) else goto start
但我的原始脚本就是这样,在程序退出后暂停窗口:
"C:\program files\Java\jre7\bin\java.exe" -Xincgc -Xmx4G -jar "craftbukkit.jar"
pause
我记得能够使用Windows XP的autoexec.bat
做这样的事情,并在菜单选项完成后返回菜单。
任何帮助将不胜感激。
答案 0 :(得分:3)
暂停后尝试输入此代码。
GOTO start
我有一个与此类似的批处理文件,我用它来自动重启服务器,如果它崩溃了。我也用它从游戏中快速重启。
看看:
@ECHO OFF
title Bukkit
color A
:start
IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="64" "%ProgramFiles(x86)%\Java\jre7\bin\java.exe" -Xincgc -Xmx1024M -jar "bukkit.jar" nogui
IF /I "%PROCESSOR_ARCHITECTURE:~-2%"=="86" java -Xincgc -Xmx1024M -jar "bukkit.jar" nogui
goto start