Python 脚本使用 crontab 执行 @reboot

Python script executed @reboot with crontab

大家早上好,

我正在使用 Telegram API 做一个 Telegram Bot(我只是使用请求(http://api.telegram.org/sendMessage.....),当我使用 python myscript.py 手动执行我的脚本时它工作正常) .

我想一直让脚本 运行 所以我去我的树莓派的 crontab 添加 @reboot python /home/pi/myscript.py。然后我做了 sudo reboot 但电报上没有消息...我不知道为什么它不起作用,你有同样的问题吗?

谢谢

cron 可能不知道在哪里可以找到 Python 解释器,因为它不共享您的用户帐户的环境变量。

有 3 种解决方案:

  1. 如果 Python 位于 /usr/bin/python,您可以将 cron 作业更改为使用绝对路径:@reboot /usr/bin/python /home/pi/myscript.py

  2. 或者,您也可以使用 PATH=/usr/bin.

    将 PATH 值添加到 crontab
  3. 另一个解决方案是在脚本文件中指定一个解释器,使其可执行,然后在您的 crontab 中调用脚本本身:

    一个。将 shebang 放在 python 文件的顶部:#!/usr/bin/python.

    b。将其设置为可执行文件:$ chmod +x /home/pi/myscript.py

    c。放在crontab中:@reboot /home/pi/myscript.py

如果您的系统上的 Python 解释器路径不同,请调整它。

Reference