在linux上由crond 来周期性的执行指令列表, 执行的任务称为cron job, 多个任务就称为crontab
开启Crontab服务
检查是否安装:
crontab -l
安装:
yum install crontabs
查看服务状态
service crond status
开启服务
service crond start
crontab -e
crontab -e 命令可以在vi中编辑任务, 如下面代码每一分钟向文本写入当前日期
* * * * * date >> ~/log.txt
创建任务后, 可以用 crontab -l 查看当前用户的任务列表,可以用 crontab -r 删除该用户的计时器设置。
命令格式如下:
- * * * * command
分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期(0-6,0代表星期天) 命令
例子:
每晚21:30重启apache
30 21 * * * service httpd restart
每月的1, 10, 22日的4:55分重启apache, 用,号分割
55 4 1,10,22 * * service httpd restart
每月的1到10日重启apache, 用-号表示区间
* * 1-10 * * service httpd restart
每隔2分钟重启apache , 这里的 */2 号 表示从0.0秒开始每隔2分钟执行
*/2 * * * * service httpd restart
每晚11点到早上7点每隔1小时重启服务器, 注意分钟是用0而不是* 假如是*则代表每分钟都在执行
0 23-7/1 * * * service httpd restart
每天18点到23点每隔30分钟重启服务器, 两种写法都可以
*/30 18-23 * * * service httpd restart
0,30 18-23 * * * service httpd restart