提示:遇到的crontab相关配置和问题汇总
配置
去掉mail发送
crontab -e 中添加 MAILTO=“” 的配置
MAILTO=""
# run five minutes after midnight, every day
5 0 * * * $HOME/bin/daily.job >> $HOME/tmp/out 2>&1
问题
1、%符号无法识别
之前写了一条crontb命令,发现并没有每天执行备份
##copy nginxconf
* 1 * * * cp -a /etc/nginx/conf/extra /etc/nginx/conf/extra.bak.`date +%Y%m%d`
cron的日志默认记录在/var/log/cron
man 8 cron
…………
You can find out which of them are you using, if you check /var/log/cron where is (or isn’t) inotify mentioned after start of daemon.
…………
查看日志发现报错
vim /var/log/cron
Jan 9 01:00:01 nginx_219 CROND[12288]: (root) CMD (cp -a /application/nginx/conf/extra /application/nginx/conf/extra.bak.`date +)
怎么我的date后面的日期转换没了哇…………man 5 crontab 看一下.哇。发现%是会被转换成换行符哇。难怪了……要对其做一下转义(\)
…………
Percent-signs (%) in the command, unless escaped with backslash (\), will be changed into newline characters, …………
…………
修改一下,明天看看结果
##copy nginxconf
* 1 * * * /cp -a /etc/nginx/conf/extra /etc/nginx/conf/extra.bak.`date +\%Y\%m\%d`