4

欲しいものはまっすぐだと思います。

23 時間 59 分後に Raspberry Pi を再起動する Python スクリプト。私がこれをやろうとしている理由は、cronジョブで時刻を設定する代わりに、Piには時計用のオンボードバッテリーがないため、時刻は気にしません(インターネットに接続されている場合、現在の時刻がソースになります) 、スクリプトの開始からちょうど 23 時間 59 分のカウント ダウン。

これは私が得た限りです。

def restart():
SendEmail = SendEmail "SYSTEM RESTART", "ncam.py auto restart initiated"      msg['Subject'], body)
command = "/usr/bin/sudo /sbin/shutdown -r now"
process = subprocess.Popen(command.split(), stdout=subprocess.PIPE)
output = process.communicate()[0]

また、上記のように設定されたパラメーターを使用して、自分自身にメールを送信したいと考えています。

4

3 に答える 3

4

これのいくつかの変形が必要になるでしょう:

 import time
 import os
 currentTime = time.time()
 tomorrow = currentTime + 86340000
 while time.time() < tomorrow:
     do.yourCode()
    
 os.system("poweroff")

あなたの関数にそのようなものを入れれば、あなたが望むことをします。

于 2013-09-01T16:24:10.413 に答える
2

「sudo reboot」コマンドでラズベリーを簡単に再起動できます。このコマンドを Python コード内に配置し、システム コマンドとして実行するだけです。たとえば、次のコードは再起動前に 1 から 10 までカウントダウンします。

import time
import os
for i in range(1,10):
       print 'hello',i
       #Do your code here
       time.sleep(1)
os.system("sudo reboot")

このメソッドを使用して、いつでもカウントダウンし、pi を再起動します。

于 2016-01-17T17:27:40.370 に答える
2

あなたはおそらくに変更する必要があります

while time.time() < tomorrow

一致する正確なミリ秒の潜在的な「ミス」を回避します。

于 2014-11-20T08:50:21.613 に答える