我希望用户(tcff)每天凌晨2点运行两个python脚本。
我已为此用户正确安装了以下crontab:
tcff@mymachine> crontab -l
0 2 * * * python /home/tcff/path/to/myscript1.py
0 2 * * * python /home/tcff/path/to/myscript2.py
每个脚本的权限是:
-rwxr-xr-x 1 tcff tcff 5522 Sep 25 12:41 myscript1.py
-rwxr-xr-x 1 tcff tcff 5522 Sep 25 12:41 myscript2.py
当我直接调用每个脚本时,它们可以正常工作:
tcff@mymachine> python /home/tcff/path/to/myscript1.py
[Output as expected]
然而,每天早上凌晨2点他们都没有被cron管理。
我无法解决这个问题。我确信我的权限是否正确等?
答案 0 :(得分:1)
是的,确实,脚本没有运行的原因是因为我没有使用Python二进制文件的完整路径:
0 2 * * * /usr/bin/python /home/tcff/path/to/myscript2.py
这是必需的,因为尽管shell(bash)在PATH上有/ usr / bin,但运行cron的进程却没有。
答案 1 :(得分:0)
首先授予脚本文件的完全权限。
chmod 777 script_name
还要跟踪crontab的日志,看看cronjob在这里发生了什么,你可以看到crontab的所有日志。可能有任何异常或错误。
root@localhost:[~]: tail -f /var/log/cron