linux 使用crontab添加定时任务,日志显示已经执行但是任务没有成功调用解决方法

问题描述:

使用 crontab 添加计划任务定时调用存储过程,crontab日志显示计划任务已经执行,但是存储过程没有被调用。


原crontab内容:

50 10 * * *  sh /shell/demo.sh demo.sql >> /shell/demo.log


原因:

路径问题,demo.sh、demo.sql、demo.log三个文件路径都在/shell下,在crontab中demo.sql没有使用绝对路径,导致计划任务执行时找不到demo.sql,所以执行失败。


解决方法:

①给demo.sql添加绝对路径:

    50 10 * * *  sh /shell/demo.sh /shell/demo.sql >> /shell/demo.log

②先进入/shell目录,再调用脚本:

    50 10 * * *  cd /shell/ && sh demo.sh demo.sql >> /shell/demo.log

你可能感兴趣的:(linux,shell)