什么是定时任务
定时任务就是让计算机在一定的时间间隔做指定的事情。
如何添加定时任务
配置方式
- 修改配置文件/etc/crontab,这种方法只能root用户使用,可以很方便地给其他用户设置计划任务,也可以指定执行shell等等
- 使用crontab -e命令编辑计划任务文件,这种所有用户都可以使用,然后文件会保存为/var/spool/cron/username,每个用户只有一个
【说明】上面两种形式在配置时的格式有所不同,第一种方式必须要指定用户,否则计划任务不执行
配置格式说明
在指定计划任务时,每一行表示一个任务,基本格式:分 时 天 月 星期 [用户] 命令
- 分:设定分钟数,其值为0-59的整数
- 时:设定小时数,其值为0-23的整数
- 天:设置天数,其值为1-31的整数(必须是指定月的有效日期)
- 月:设置月数,其值为1-12的整数,或者jan、feb等简写形式
- 星期:设置星期几,其值为0-6的整数,0表示周日,1-6表示周一至周六,也是使用sun/mon等简写形式
- 用户:指定用户,在直接编辑/etc/crontab文件时必须要添加,使用crontab -e编辑时不需要添加
#使用说明
'*'表示所有可能的值,如:分钟项表示每分钟执行
'-'表示连续整数,如:1-4,表示:1,2,3,4
步进设置使用'/',如:小时项设置*/3,表示每3小时执行一次
','表示选择的范围,可能的取值,如:天数项设置为1,2,3,表示1,2,3号
'#'表示注释内容,不会被执行
基本示例
30 23 * * * /usr/local/etc/rc.d/httpd restart
上面的例子表示每晚的23:30重启apache。
crontab命令使用
-u:指定用户(管理员使用),默认为当前用户,
-l:列出计划任务
-e:编辑计划任务,每个用户的计划任务文件为: /var/spool/cron/用户名
-r:删除计划任务
-i:删除前的提示