crontab
配置
1
、命令功能
通过crontab
命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script
脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。
2
、安装
crontab
yum install crontabs
服务操作说明:
/sbin/service crond start ##
启动服务
/sbin/service crond stop ##
关闭服务
/sbin/service crond restart ##
重启服务
/sbin/service crond reload ##
重新载入配置
##
查看crontab
服务状态:
service crond status
##
手动启动crontab
服务:
service crond start
##
查看crontab
服务是否已设置为开机启动,执行命令:
chkconfig --list
##
加入开机自动启动:
chkconfig --level 35 crond on
3
、命令格式
crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
参数说明:
-u user
:用来设定某个用户的crontab
服务,例如,“-u ixdba
”表示设定ixdba
用户的crontab
服务,此参数一般有root
用户来运行。
file
:file
是命令文件的名字,
表示将file
做为crontab
的任务列表文件并载入crontab
。
-e
:编辑
某个用户的crontab
文件内容。如果不指定用户,则表示编辑当前用户的crontab
文件。
-l
:显示
某个用户的crontab
文件内容,如果不指定用户,则表示显示当前用户的crontab
文件内容。
-r
:删除
定时任务配置,从/var/spool/cron
目录中删除某个用户的crontab
文件,如果不指定用户,则默认删除当前用户的crontab
文件。
-i
:在删除用户的crontab
文件时给确认提示。
命令示例:
crontab file [-u user] ##
用指定的文件替代目前的crontab
。
crontab -l [-u user] ##
列出用户目前的crontab.
crontab -e [-u user] ##
编辑用户目前的
crontab.
4
、调度配置
4.1
配置说明
基本格式 :
*
*
*
*
*
command
分
时
日
月
周
命令
第1
列表示分钟1
~59
每分钟用*
或者 */1
表示
第2
列表示小时0
~23
(0
表示0
点) 7-9
表示:8
点到10
点之间
第3
列表示日期1
~31
第4
列表示月份1
~12
第5
列标识号星期0
~6
(0
表示星期天)
第6
列要运行的命令
4.2
配置示例
30 21 * * * /usr/local/etc/rc.d/httpd restart
上面的例子表示每晚的21:30
重启apache
。
45 4 1,10,22 * * /usr/local/etc/rc.d/httpd restart
上面的例子表示每月1
、10
、22
日的4 : 45
重启apache
。
10 1 * * 6,0 /usr/local/etc/rc.d/httpd restart
上面的例子表示每周六、周日的1 : 10
重启apache
。
0,30 18-23 * * * /usr/local/etc/rc.d/httpd restart
上面的例子表示在每天18 : 00
至23 : 00
之间每隔30
分钟重启apache
。
0 23 * * 6 /usr/local/etc/rc.d/httpd restart
上面的例子表示每星期六的11 : 00 pm
重启apache
。
* */1 * * * /usr/local/etc/rc.d/httpd restart
上面的例子每一小时重启apache
* 23-7/1 * * * /usr/local/etc/rc.d/httpd restart
上面的例子晚上11
点到早上7
点之间,每隔一小时重启apache
0 11 4 * mon-wed /usr/local/etc/rc.d/httpd restart
上面的例子每月的4
号与每周一到周三的11
点重启apache
0 4 1 jan * /usr/local/etc/rc.d/httpd restart
上面的例子一月一号的4
点重启apache