【问题标题】:How to successful launch a python cronjob?如何成功启动 python cronjob?
【发布时间】:2015-06-27 16:54:07
【问题描述】:

在我看来这是一件容易的事,但我不知道如何实现它。

我有一个 python 脚本,在最初的几次尝试中可能会崩溃。 (它正在调用一个尚未准备好的 websocket。)

我可以告诉 cronjob 继续尝试运行这个脚本直到它最终工作吗?还是我必须在 python 脚本本身中实现它?

这是 Crontab 中的行

@reboot sh /home/pi/launcher.sh

这是 .sh 文件。

#!/bin/sh
# launcher.sh
cd /
sudo python /home/pi/example.py
cd /

【问题讨论】:

  • 在 Python 脚本中实现它(例如,使用 tryexcept)几乎肯定比在 shell 脚本中实现更简单。

标签: python linux cron sh


【解决方案1】:

无论具体的任务是什么,您最好在 python 脚本中实现它。这似乎更直接。例如:

while True:
    try:
        # your task
        # check if it was successful and if so
        break
    except Exception: # a relevant exception would be best
        pass # you could even use sleep() here(time module)
             #  to wait a few seconds between tries 

【讨论】:

  • 是的,这是有效的。但是,我使用了修改后的版本,例如 this one。它将尝试 5 次,中间间隔 5 秒。那应该工作。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-26
  • 2018-11-15
  • 1970-01-01
  • 2023-02-02
  • 1970-01-01
  • 1970-01-01
  • 2019-12-09
相关资源
最近更新 更多