我有一台我在Mac上运行的Minecraft Bukkit服务器。我经常旅行,让服务器重新启动很痛苦。我是否有可能拥有一个Python 2.7.3脚本,它可以使用 stop 命令关闭服务器。然后我想让脚本等待30秒然后重新打开服务器。我希望该脚本也在一个定时器上,每6小时重启一次服务器。
我的主要问题是,是否有任何模块,库或方法可供我完成此操作,如果需要,我可以在哪里找到更多信息?
print "Hello - This is the Bukkit Restart Program!"
"\n"
print "It will restart the minecraft server every 6 hours"
----伪代码----
def RESTART():
OUTCOME = None
Every 6 hours:
if program can open start_server.command:
print "stop" in start_server.command
wait 30 seconds
open start_server.command
OUTCOME = 1
else:
print "Error encountered!!"
OUTCOME = 0
return OUTCOME
def check():
log = open("log.txt", "a+")
if OUTCOME = 1:
log.write("\n <insert time> SUCCESS!")
else:
log.write("\n <insert time> FAILURE! PLEASE CHECK CODE!")
log.close()
RESTART()
check()
很抱歉,如果我的问题太天真,但我是业余程序员!
谢谢!
答案 0 :(得分:1)
用于此工作的好工具是cron
。它安装在Mac上,专门用于以特定间隔运行任务。
我会创建一个运行命令的python脚本(查看subprocess
模块)并执行任何错误检查,然后将其设置为cron作业。
设置cron作业的基本步骤是这样的:
# (in a terminal)
# This opens up your crontab file, which lists all your scheduled jobs
crontab -e
然后添加几行,如:
0 0 * * * python /path/to/your/script.py
0 12 * * * python /path/to/your/script.py
这将在午夜和每天中午运行一次脚本。