ubuntu crontab 定时任务

新建了测试文件

touch /home/ubuntu/test.sh

文件内容如下

echo  hahaha+$(date)  >>  a.txt

权限请设置好

chmod 777 /home/ubuntu/test.sh

测试执行/home/ubuntu/test.sh可以往a.txt持续输入内容

开始设置定时任务

crontab -e 

填入内容, 每分钟执行一次

* * * * * /home/ubuntu/test.sh

等待ing 。。。。。。。。。。
我去,没有内容

开始定位

sudo service cron status

看到cron是启动着的

不放心还是重启了下

sudo service cron restart

继续观察没啥用,开始看日志

tail -f /var/log/cron.log

日志文件不存在,ubuntu默认把日志关了
开启日志

sudo vim /etc/rsyslog.d/50-default.conf

找到cron.log相关行,将前面注释符#去掉,保存退出,重启rsyslog:

sudo  service rsyslog  restart
sudo service cron restart

再看日志

tail -f /var/log/cron.log

有了,确实每分钟都在执行,也没啥报错,那肯定是脚本或者定时任务写的有问题


cron 日志

修改文档路径和权限
将/home/ubuntu/test.sh内容改成

echo  hahaha+$(date)  >>  /home/ubuntu/a.txt

chmod 777 /home/ubuntu/a.txt

再看,定时任务执行成功了


image.png

表达式生成可参考 cron表达式生成

如早上7点和晚上19点执行,为 0 0 7,19 * * (最后的?是年份,可选,可不填)

image.png

你可能感兴趣的:(ubuntu crontab 定时任务)