shell脚本手动可执行, cron计划任务却无法执行

搞了一上午, 问题很奇怪, shell写的脚本手动正常,添加到计划任务却无法正常执行, 

终于定位到问题所在

第一点 如果用cron, shell脚本中命令及文件的路径必须是绝对路径

第二点, cron的环境变量与shell不同, 所以把~/.bash_profile里面的环境变量统统写道shell脚本里, 再让cron执行就没问题了。

或者

如果你是root用户就用这个:

30 4 * * * su - root -c “/root/weblog.sh” 

如果你是非root用户就用:30 4 * * * . /etc/profile;/bin/sh  /root/weblog.sh

0  6  *  *  *  su - root -c /root/tools/backup_db.sh  >& /dev/null

 

posted @ 2018-03-07 14:53  屌丝的IT  阅读(297)  评论(0编辑  收藏  举报