shell脚本直接执行没有问题,crontab定时执行失败的解决方法

时间:2022-01-10 07:59:02

在实行一个shell脚本(调用java程序修改一个excel文件)时,单独sh可以得到想要的结果。

但是放到crontab定时执行后,却没有得到一个新的excel文件,log也没有报错。

查看了路径,文件权限都没有问题,最后在网上查了一下,发现这样可以解决问题:

将crontab执行的语句进行修改:
  15 11 * * * /home/loganalysis/dealexcel.sh >> /home/loganalysis/error.log 2>&1
  修改为:
  15 11 * * * cd /home/loganalysis/ && ./dealexcel.sh >> /home/loganalysis/error.log 2>&1


但是这样可以解决的原因还不是很清楚,希望有大牛可以解释一下。