我认为我想要的是直截了当。
Python脚本在23小时59分钟后重启我的Raspberry Pi。我试图这样做的原因,而不是设置一个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]
此外,我想使用上述设置参数向自己发送电子邮件。
答案 0 :(得分:3)
你会想要一些变体:
import time
import os
currentTime = time.time()
tomorrow = currentTime + 86340000
while time.time() != tomorrow:
do.yourCode()
os.system("poweroff")
在你的功能中放置类似的东西,它会做你想要的。
答案 1 :(得分:1)
你应该改为
while time.time() < tomorrow
避免任何潜在的错过&#34;精确的毫秒匹配。
答案 2 :(得分:1)
您可以使用&sudo reboot&#39;简单地重启树莓。命令。 只需将此命令放在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。