【问题标题】:If one Cron Job fails, carry on to next job如果一个 Cron 作业失败,则继续下一个作业
【发布时间】:2019-07-18 00:33:36
【问题描述】:

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

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

问题是如果互联网出现故障,那么这些脚本就会失败。 所以我创建了另一个脚本来读取逆变器并将结果存储到本地数据库中,以后可以上传。但是如果没有互联网,那么之前的 Cron 任务就会失败,Python 脚本也不会运行。

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

【问题讨论】:

  • AFAIK,cron 作业从您的 HOME 目录开始,因此无需将目录更改到那里。 AFAIK,你的 crontab 中的每一行/作业都是独立于其他的,所以我认为你的假设需要重新审视。

标签: python cron raspberry-pi cron-task


【解决方案1】:

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

command1 || command2 

在您的 crontab 行中。那么:

如果 command1 失败,command2 将被执行(返回错误) 它会是这样的:

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

当然,你也可以在你的 python 脚本中嵌入这个逻辑。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-19
    • 1970-01-01
    • 2019-01-18
    • 1970-01-01
    • 2011-09-27
    相关资源
    最近更新 更多