问题出现的场景大概就是
1 cron调用一个python脚本
2 python脚本中调用一个shell脚本(对日志分析)获取shell输出然后发送邮件
类似一个监控任务。
直接执行python脚本没有问题,但是写在cron中之后,shell脚本中的相对路径就找不到了,总是提示无法找到某些文件
后来解决的问题就是使用log文件的绝对路径,运行就正常了。
google了一些,发现很多人也遇到过类似的问题,可能和cron的机制有关系。
大部分人的问题都是因为环境变量造成的,因为cron是一个独立进程,也不是用户登录等,所以有些程序会无法执行成功。
类似: http://stackoverflow.com/questions/2388087/how-to-get-cron-to-call-in-the-correct-paths
但是从很多人的脚本中基本都是绝对路径,可能还是我写的太少,很多原则和原理不是很清楚。
本文讨论了在Cron环境下执行Python脚本时,调用包含相对路径的Shell脚本导致的路径错误问题。文章指出,在Cron环境中由于环境变量的不同,使用相对路径可能会引发找不到文件的错误,并分享了解决方案:改用绝对路径。
5866

被折叠的 条评论
为什么被折叠?



