Linux中有一个功能模块叫crond,它是一个定时调度服务,它会按照用户配置的方案,定时帮用户去启动一个程序(脚本)
crond(通常称呼为crontab)的配置方法:
crontab -e 编辑定时配置
crontab –e
0 1 * * * /root/bin/a.sh
0 2 * * * /root/bin/b.sh
0 3 * * * /root/bin/c.sh
0 4 * * * /root/bin/d.sh
这将会在每天早上1点运行 /root/bin/a.sh
这将会在每天早上2点运行 /root/bin/b.sh
以下是 crontab 配置文件的格式:
{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script}
每个时间占位,可以给一个具体的值,比如在“时”占位上给一个值1,就代表1点
每个时间占位,可以给一个区间,比如在“时”占位上给 1-5,就代表1点到5点之间的每一点
区间还可以组合 1-5,8-10
每个时间占位,可以给一个频次,比如在“分”占位上给 */5,代表 每隔5分钟执行一次
分minute: 区间为 0 – 59
时hour: 区间为0 – 23
日day-of-month: 区间为0 – 31
月month: 区间为1 – 12; 1 是1月,12是12月.
周Day-of-week: 区间为0 – 7; 周日可以是0或7.
Crontab配置示例
1.在 12:01 a.m 运行,即每天凌晨过一分钟。
这是一个恰当的进行备份的时间,因为此时系统负载不大。
1 0 * * * /root/bin/backup.sh
2.每个工作日(Mon – Fri) 11:59 a.m 都进行备份作业。
59 11 * * 1,2,3,4,5 /root/bin/backup.sh
下面例子与上面的例子效果一样:
59 11 * * 1-5 /root/bin/backup.sh
3 每5分钟运行一次命令
*/5 * * * * /root/bin/check-status.sh
4.每个月的第一天 1:10 p.m 运行
10 13 1 * * /root/bin/full-backup.sh
5.每个工作日 11 p.m 运行。
0 23 * * 1-5 /root/bin/incremental-backup.sh
Crontab 命令选项
以下是 crontab 的有效选项:
crontab –e : 修改 crontab 配置文件,如果文件不存在会自动创建。
crontab –l : 显示 crontab 配置文件中配置的定时任务。
crontab -r : 删除 crontab 配置文件。
crontab -ir : 删除 crontab 文件前提醒用户。