0%

cron执行python脚本问题

写了一个小脚本,想用 cron 来定时执行,但是发现有问题,记录一下。
感觉有点挫败,尤其是想用 gpt 来辅助写下,感觉会很快,谁知道折腾了几天空下来的时间,如此看来难道是 gpt 也不用那么快替代我们,毕竟人是会犯错的,虽然它很厉害,但是用的人有情绪影响不是那么简单。

问题

手动运行可以,但是放到 cron 里就不行了

  1. 路径问题
    1. 这里包括脚本里的文件路径都要用绝对路径
    2. crontab 里的路径也要用绝对路径
  2. 运行的时候发现,总是到时间log里提示 cron[6654]: (root) RELOAD (crontabs/root) 就是没有 cmd 执行的字样。难道是手动改了 crontab 之后还要自己手动reload下这个服务 sudo service cron reload
  3. 最后发现可能是自己的时间格式写错了,应该是 1 * * * * 而不是 01 * * * *,就这…

解决

最后解决可能是几个问题的综合,最后的 crontab 配置如下:

5 0 * * * /usr/bin/python3 /home/xxx/xxx.py