如果一个Cron作业失败,请继续执行下一个作业

时间:2019-02-24 12:54:07

标签: python cron raspberry-pi cron-task

我已经设置了Crontab来执行一系列Python脚本,以便查询太阳能逆变器并将结果上传到PVOutput:

*/5 * * * * cd /home/Pi/; python pvout_upload.py;
*/5 * * * * cd /home/Pi/; python weather.py;

问题是,如果Internet断开,则这些脚本将失败。 因此,我创建了另一个脚本,该脚本读取逆变器并将结果存储到本地数据库中,以后可以上载。但是,如果没有互联网,那么以前的Cron任务就会失败,并且Python脚本也不会运行。

如果失败了,是否有办法让Cron任务继续到下一行?

1 个答案:

答案 0 :(得分:0)

您可以为此使用经典的shell资源。如果你放

command1 || command2 
在您的crontab行中

。然后:

如果command1失败(返回错误),将执行

command2 就像这样:

*/5 * * * * cd /home/Pi/; python pvout_upload.py || python errorManagement.py

当然,您也可以将此逻辑嵌入到python脚本中。