一招必杀:
在脚本最前面加上一句:
source ~/.bash_profile
这样运行环境就一摸一样了。加上这句后,直接执行能成功的脚本放在crontab里都能执行。

所有的crontab问题只有两种可能,
1,环境
2,路径
而第二种问题往往又是第一种问题引起的,所以加上.bash_profile里的环境后99%的问题都一招通杀。
.bash_profile会读取.bashrc
.bashrc 会读取 /etc/bashrc
/etc/bashrc 会读取 /etc/profile
一个linux所有的系统用户,所有的环境变量,都逃不出以上几个文件。(前提是你用bash)
shell脚本直接运行和crontab结果不一样
标签: