crontab定时任务执行shell脚本失败的问题__linux

一、问题描述

定时任务在命令行直接执行可以正确执行,但是加入定时任务之后没有执行结果

二、排查过程

原定时任务填写方式:

[root@localhost ~]# crontab -l

  * * * * * /bin/sh /server/test.sh >>/dev/null 2>&1

1、已经是填写绝对路径

2、查看corn执行日志,等待查看打出的日志有无正确执行所填写的任务

  [root@localhost ~]#tail -f /var/log/cron

此处我查看日志,是已经正确执行了,如果没有,查看报错,对应解决

3、已经正确执行了任务,是否因为脚本的环境变量问题,所以在要执行的脚本中开头添加:

  #!/bin/bash
  source /etc/profile

4、若果还是不行,修改定时任务填写方式,手动切换到脚本路径之后再执行脚本

* * * * * cd /server/ && /bin/sh test.sh >>/dev/null 2>&1

我所遇到的情况便是需要在定时任务手动切换路径才能成功!!

原文地址:https://www.cnblogs.com/chenxiaozan/p/12567115.html