手动执行脚本正常,crontab执行脚本有问题

Linux下用crontab执行定时任务的时候不会读取全局环境变量和当前用户环境变量(/etc/profile、~/.bash_profile),所以会导致手工执行某个脚本时是成功的,但是crontab定期执行有问题。


两种解决办法:

1、在Shell文件里面获取环境变量值的路径写成绝对路径,别用环境变量的路径值。

比如mysql替换成/usr/local/mysql/bin/mysql


2、Shell脚本缺省的#!/bin/bash开头换行

#!/bin/bash
. /etc/profile
. ~/.bash_profile


相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...