我试图让cron调用正确的PATH。当我从外壳运行Python脚本时,脚本运行良好,因为它使用了bashrc中设置的PATH,但是当我使用cron时,bashrc中并未使用所有PATH。是否有一个文件可以像bashrc一样输入cron的PATH或从bashrc调用PATH的方法?
抱歉,我的措词不正确,我可以运行正确的脚本(这意味着crontab中脚本的PATH不是这里的问题),只是该脚本在运行时,我运行了构建,并且使用了在中设置的路径.bashrc
。登录后运行脚本时,将.bashrc
拉入PATH。由于cron并未在shell中运行,所以说它不会拉入.bashrc
。有没有一种方法可以不必编写bash脚本包装器而将其引入?
source /etc/profile
,它应该会给.bashrc
您带来麻烦,并给您带来很多其他可能丢失的东西。如果您希望某些脚本“独立运行”,则明确的配置文件来源非常有用,它还可以防止怪异的环境,等等……
sh
crontab调用的脚本起作用。您可以通过添加作业(例如* * * * * echo $PATH > ~/crontab_path.txt
,一分钟后检查文件)来确认它更新了路径。