当前位置:   article > 正文

批量为Minecraft服务器自动重启脚本,实现自动重启功能

mc goto start

3 个答案:

答案 0 :(得分:2)

我使用它但是如果你想让它自动重启它,那么只需删除:choise部分并从开始到重新启动循环





@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



PS。将minecraft_server.1.8.3.jar替换为您的服务器文件名称

答案 1 :(得分:1)

解决方案1:

我建议使用Windows任务调度程序而不是批处理文件。在那里,您可以创建一个任务,安排它在上午12点/下午触发,并插入您想要执行的任何cmd命令。但是,在不知道特定接口或如何管理Minecraft服务器的情况下与服务器控制台进行通信是非常重要的。你可以做的就是杀死服务器并使用命令行重新启动它。

解决方案2:

如果您不喜欢此解决方案并且不知道如何与服务器控制台通信,则可以尝试以下操作:

看看AutoIt(https://www.autoitscript.com/site/)。它是一种非常简单的脚本语言,也可以模拟键盘的点击和输入。因此,您可以编写一个脚本,将焦点设置到服务器控制台,并键入所需的命令以重新启动服务器。可以将此AutoIt脚本编译为exe文件,也可以将其作为au3脚本运行。

您仍应使用任务计划程序在上午12点/下午运行您的exe /脚本。

如果您需要一些帮助来编写AutoIt脚本,我可以帮助您。

答案 2 :(得分:0)

我为AutoIt中的朋友写了一个类似的程序,这里的脚本我评论了你需要配置的行:

HotKeySet("{ESC}", end)

HotKeySet("{F1}", start) ;optional

HotKeySet("{F2}", pause) ;optional

pause() ; starts the pause loop when started

; restarts the server all 12 hours

Func start()

$Path = "PathToYourBatch.bat" ; self explained

While 1

If @HOUR = 00 Or @HOUR = 12 Then ;starts the server at 00 and 12

Run($Path)

EndIf

WEnd

EndFunc

Func pause()

While 1

Sleep(500) ; waits 500 ms to reduce lag

WEnd

EndFunc

Func end()

Exit

EndFunc

您不需要使用热键,但您可以使用它们轻松控制程序(远程桌面)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/173135?site
推荐阅读
相关标签
  

闽ICP备14008679号