1

Macで実行しているMinecraftBukkitサーバーがあります。私も頻繁に旅行するので、サーバーを再起動するのは面倒です。stopコマンドを使用してサーバーを閉じることができるPython2.7.3スクリプトを使用することは可能ですか。次に、スクリプトを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()

私の質問があまりにも素朴であるならば申し訳ありませんが、私はアマチュアプログラマーです!

ありがとう!

4

1 に答える 1

1

このジョブに使用するのに適したツールはですcron。Macにインストールされ、特定の間隔でタスクを実行するために特別に設計されています。

subprocessコマンドを実行し(モジュールを調べて)、必要なエラーチェックを実行するPythonスクリプトを作成し、それをcronジョブとして設定します。

cronジョブを設定するための基本的な手順は、次のようなものです。

# (in a terminal)
# This opens up your crontab file, which lists all your scheduled jobs
crontab -e

次に、次のような2行を追加します。

0 0 * * *  python /path/to/your/script.py
0 12 * * * python /path/to/your/script.py

これにより、スクリプトは毎日深夜に1回、正午に1回実行されます。

于 2013-01-24T01:53:02.500 に答える