我有一个如下的 cronjob:
*/10 * * * * root cd /some/directory && python3 FILE.py >> Output.txt 2>&1
如果我从常规命令行运行该命令,它工作正常。但是当从 cronjob 运行时,我得到/bin/sh: python3: not found
但当我跑步时echo $PATH
它返回
/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin:/usr/local/python3/bin:/opt/bin
(注意/usr/local/python3/bin
包含在该目录中
我该如何解决?
看起来 cronjob 的环境与交互式 shell 不同。您可以编辑 cronjob 以使用绝对路径来调用该 python 脚本。或者您可以编写一个包装器 sh 脚本来准确设置 python 脚本所需的环境,并让 cronjob 执行它。
https://askubuntu.com/questions/23009/reasons-why-crontab-does-not-work https://askubuntu.com/questions/23009/reasons-why-crontab-does-not-work
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)