基本格式 mysql
* * * * * command 分 時 日 月 周 命令 第1列表示分鐘1~59 每分鐘用*或者 */1表示 第2列表示小時1~23(0表示0點) 第3列表示日期1~31 第4列表示月份1~12 第5列標識號星期0~6(0表示星期天) 第6列要運行的命令
crontab文件的一些例子sql
# 每晚的21:30重啓apache。apache
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
# 每個月一、十、22日bash
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
# 天天早上6點10分rest
10 6 * * * date
# 每兩個小時code
0 */2 * * * date
# 晚上11點到早上8點之間每兩個小時,早上8點crontab
0 23-7/2,8 * * * date
# 每一個月的4號和每一個禮拜的禮拜一到禮拜三的早上11點table
0 11 4 * mon-wed date
# 1月份1日早上4點class
0 4 1 jan * date
不少時候,咱們計劃任務須要精確到秒來執行,根據如下方法,能夠很容易地以秒執行任務。date
如下方法將每10秒執行一次
# crontab -e * * * * * /bin/date >>/tmp/date.txt * * * * * sleep 10; /bin/date >>/tmp/date.txt * * * * * sleep 20; /bin/date >>/tmp/date.txt * * * * * sleep 30; /bin/date >>/tmp/date.txt * * * * * sleep 40; /bin/date >>/tmp/date.txt * * * * * sleep 50; /bin/date >>/tmp/date.txt
注意若是命令用到%的話須要用\轉義
01 01 * * * mysqldump -u root --password=passwd-t mustang > /root/backups/mustang-table_$(date +\%Y\%m\%d_\%H\%M\%S).sql
# backup mysql 00 01 * * * mysqldump -u root --password=passwd-d mustang > /root/backups/mustang_$(date +\%Y\%m\%d_\%H\%M\%S).sql 01 01 * * * mysqldump -u root --password=passwd-t mustang > /root/backups/mustang-table_$(date +\%Y\%m\%d_\%H\%M\%S).sql