如何让python打开一个应用程序并使用它?

时间:2013-01-24 01:43:30

标签: python macos minecraft bukkit

我有一台我在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()

很抱歉,如果我的问题太天真,但我是业余程序员!

谢谢!

1 个答案:

答案 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

这将在午夜和每天中午运行一次脚本。