概述
使用crontab在linux下可以建立循环工作任务。与linux中的at类似,可以显示哪些用户能够添加crontab命令。crontab命令的最小时间单位是秒。crontab的命令存放在/var/spool/cron里面
限制用户使用crontab命令
与at命令类似,通过使用/etc/cron.allow 和/etc/cron.deny
注意,cron执行的每项动作都会记录到/var/log/cron文件里面。
cron表达式
代表意义 | 分钟 | 小时 | 日期 | 月份 | 周 | 指令 |
---|---|---|---|---|---|---|
数字范围 | 0-59 | 0-23 | 1-31 | 1-12 | 0-7 | 指令 |
注:周里面的0,7都表示的是周
特殊字符 | 代表意义 |
---|---|
*(星号) | 代表任何时刻的意思。 |
,(逗号) | 代表分隔时段的意思。如每天的3:00与6:00,可以表示为0 3,6 * * * command |
-(减号) | 代表一段范围。如每天8到20点的20分执行一项工作。20 8-20 * * * command |
/n | 代表每隔一段时间的范围。如每隔5分钟执行一项工作。/5 * * * command |
循环任务的管理
查看自己的循环工作任务
crontab -l
编辑crontab任务
crontab -e
删除所有的循环任务
crontab -r
如何唤醒停机期间的工作任务
使用anacron
由于anacron会以一天、七天、一个月为单位去侦察系统未进行的crontab任务。anacron其实是一个程序并非一个任务,anacron执行完毕后就关闭。每次系统启动后执行anacron命令,anacron命令依据时间戳判断是否需要执行该命令。