在Centos上用crontab执行计划任务,定时脚本,但是最终却没有看到效果.
首先,我去查看了crontab
日志,发现crontab有去执行,但是脚本并没有执行。
查看日志的方法
cat /var/log/cron
日志有执行记录。
然后我测试了一个脚本文件,创建一个shell脚本文件,内容如下
echo 1 >> test.txt
放在crontab 里面去定时执行,结果还是没有。
我怀疑是脚本文件的问题,直接执行文件
sh test.sh
有文件生成,然后我把脚本直接扔crontab里面去执行
* * * * * echo 1 >> /root/test.txt
这回成功了,我修改了脚本文件
echo 1 >> /root/test.txt
再次放crontab里面执行,也成功了。文件的路径必须是绝对路径。
但是执行的php脚本还是没有执行。通过搜索,我觉得可能是环境变量引起的,由于之前环境变量是在临时的里面,重启系统之后,失效。
所有crontab命令我这么写
* * * * * /usr/local/php/bin/php test.php
这回成功了。