计划任务分2种:nginx
一、 例外性:按必定的周期循环来执行工做,例如每个月发薪水、天天一次的工做报告、天天须要的打卡等等;ide
二、 临时性:指定时间执行的命令,此次作完下次没必要作的,例如女友的生日、领导检查工做等;spa
这些计划任务的工做 Linux也均可以帮助咱们,例如:天天早6:00要叫我起床(固然是经过音频设备了);下班以前发送一份Email给本身,提醒别忘记发日报等等; rest
对于周期性的任务用cron命令;orm
对于临时性的任务用 at 命令;blog
at命令:在指定的时间执行指定的命令,执行完以后就从系统中取消该命令;crontab
cron命令:在指定的时间周期性的执行指定的命令;get
安装crontab:同步
yum install crontabsit
说明:
/etc/init.d/crond start 启动服务
/etc/init.d/crond stop 关闭服务
/etc/init.d/crond restart 重启服务
/etc/init.d/crond reload 从新载入配置
查看crontab服务状态: /etc/init.d/crondd status
查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自启动: chkconfig –level 35 crond on
一、 crontab命令
功能说明: 设置计时器
语法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]
补充说明: cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序;只要用户会编辑计时器的配置文件,就可使用计时器的功能;
其配置文件格式以下:
Minute Hour Day Month DayOFWeek Command
参数:
-e 编辑该用户的计时器设置;
-l 列出该用户的计时器设置;
-r 删除该用户的计时器设置;
-u<用户名称> 指定要设定计时器的用户名称;
二、 crontab格式
基本格式: * * * * * command
分 时 日 月 周 命令
第1列表示:分钟1~~59 每分钟用*或*/1表示
第2列表示:小时1~~23 (0 表示0点)
第3列表示:日期1~~31
第4列表示:月份1~~12
第5列表示:星期0~~6 (0 表示 星期天)
第6列表示:运行的命令
三、 案例
30 21 * * * /etc/init.d/nginx restart 每晚21:30 重启nginx
45 4 1,10,22 * * /etc/init.d/nginx restart 每个月一、十、22日的4:45分 重启nginx
10 1 * * 6,0/etc/init.d/nginx restart 每周六日的1:10 重启nginx
0,30 18-23 * * * /etc/init.d/nginx restart 18点至23点之间每隔30分钟重启nginx
0 23 * * 6 /etc/init.d/nginx restart 每周六的23点重启nginx
* */1 * * * /etc/init.d/nginx restart 每一小时重启nginx
* 23-7/1 * * * /etc/init.d/nginx restart 晚上23点到早上7点之间,每小时重启nginx
0 11 4 * mon-wed /etc/init.d/nginx restart 每个月4号的周一到周三 11点重启nginx
0 4 1 jan * /etc/init.d/nginx restart 一月1号的4点重启nginx
*/30 * * * * /usr/sbin/ntpdate 210.72.145.20 每30分钟同步一次时间