一:什么是计划任务
- 你给手机定了一个闹钟,每天的 7:00 会准时响铃叫你起床,这实际上就是一个计划任务
- 所谓定时任务,就是在已经定好的特定时间去执行的事情。
- Cron是一个[守护程序]用于在指定的时间内执行行程类的任务,每一个用户都有一个Crontab文件,执行计划。
- Cron 的最小颗粒是 分钟
二:怎么配置计划任务
- Linux 命令
crontab -e
- 写入
# m h dom mon dow command
* * * * * date >> /home/time.log
- 查看效果
vagrant@lims2:~$ tail -f /home/time.log Tue Mar 27 05:57:01 UTC 2018 Tue Mar 27 05:58:01 UTC 2018 Tue Mar 27 05:59:01 UTC 2018 Tue Mar 27 06:00:01 UTC 2018 ...
三:怎么写出一个适合自己的定时任务
- 了解配置 # m h dom mon dow command
- m 分钟 0-59
- h 小时 0-23
- dom 天1-31
- mon 月 1-12
- dow 星期 1-6 0表示星期天
- command 就是要执行的命令
四:一些定时任务的实例
1: 每1分钟执行一次command
命令:* * * * * command
2:每小时的第3和第15分钟执行
命令:3,15 * * * * command
3:在上午8点到11点的第3和第15分钟执行
命令:3,15 8-11 * * * command
4:每隔两天的上午8点到11点的第3和第15分钟执行
命令:3,15 8-11 */2 * * command
5:每个星期一的上午8点到11点的第3和第15分钟执行
命令:3,15 8-11 * * 1 command
6:每晚的21:30重启smb
命令:30 21 * * * /etc/init.d/smb restart
7:每月1、10、22日的4 : 45重启smb
命令:45 4 1,10,22 * * /etc/init.d/smb restart
8:每周六、周日的1 : 10重启smb
命令:10 1 * * 6,0 /etc/init.d/smb restart
9:每天18 : 00至23 : 00之间每隔30分钟重启smb
命令:0,30 18-23 * * * /etc/init.d/smb restart
10:每星期六的晚上11 : 00 pm重启smb
命令:0 23 * * 6 /etc/init.d/smb restart
11:每一小时重启smb
命令:* */1 * * * /etc/init.d/smb restart
12:晚上11点到早上7点之间,每隔一小时重启smb
命令:* 23-7/1 * * * /etc/init.d/smb restart
13:每月的4号与每周一到周三的11点重启smb
命令:0 11 4 * mon-wed /etc/init.d/smb restart
14:一月一号的4点重启smb
命令:0 4 1 jan * /etc/init.d/smb restart
15:每小时执行/etc/cron.hourly目录内的脚本
命令:01 * * * * root run-parts /etc/cron.hourly