Raspberry pi 用于重新启动Raspberry Pi的Python脚本
我想我想要的是直截了当的 Python脚本在23小时59分钟后重新启动我的Raspberry Pi。我之所以尝试这样做,而不是使用cron任务设置时间,是因为Pi没有用于时钟的板载电池,所以我不在乎时间是多少(如果连接到internet,它将提供当前时间),只是从脚本开始倒数23小时59分钟 这就是我所能做到的Raspberry pi 用于重新启动Raspberry Pi的Python脚本,raspberry-pi,Raspberry Pi,我想我想要的是直截了当的 Python脚本在23小时59分钟后重新启动我的Raspberry Pi。我之所以尝试这样做,而不是使用cron任务设置时间,是因为Pi没有用于时钟的板载电池,所以我不在乎时间是多少(如果连接到internet,它将提供当前时间),只是从脚本开始倒数23小时59分钟 这就是我所能做到的 def restart(): SendEmail = SendEmail "SYSTEM RESTART", "ncam.py auto restart initiated"
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]
此外,我还想向自己发送一封电子邮件,其中包含上述设置的参数。您将需要此参数的一些变体:
import time
import os
currentTime = time.time()
tomorrow = currentTime + 86340000
while time.time() < tomorrow:
do.yourCode()
os.system("poweroff")
导入时间
导入操作系统
currentTime=time.time()
明天=当前时间+86340000
while time.time()<明天:
do.yourCode()
操作系统(“断电”)
在函数中添加类似的内容,它将执行您想要的操作。您可能应该更改为
while time.time() < tomorrow
while time.time()<明天
为了避免任何可能的精确毫秒的“遗漏”。您只需使用“sudo reboot”命令重新启动raspberry即可。 只需将此命令放入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。只是想一想,为什么不创建一个cron作业(或类似作业)并执行一个python命令来重新启动pi?否则(如下所示),您必须让python保持循环,我不确定运行该脚本需要多少cpu/内存;重启代码>?虽然你是对的(我必须承认我也这么认为),但这似乎是对while time.time()的评论。看见