学堂 学堂 学堂公众号手机端

centos 7 ubutu 22.04 linux系统 crontab 计划任务使用案例

lewis 12个月前 (05-13) 阅读数 16 #技术

crontab 文件格式

每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下



每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:

minute   hour   day   month   week   command
# For details see man 4 crontabs
# Example of job definition:
.---------------------------------- minute (0 - 59) 表示分钟
| .------------------------------- hour (0 - 23) 表示小时
| | .---------------------------- day of month (1 - 31) 表示日期
| | | .------------------------- month (1 - 12) OR jan,feb,mar,apr ... 表示月份
| | | | .---------------------- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat 表示星期(0 或 7 表示星期天)
| | | | | .------------------- username 以哪个用户来执行
| | | | | | .------ command 要执行的命令,可以是系统命令,也可以是自己编写的脚本文件
| | | | | | |
* * * * * user-name command to be executed
命令
yum install crontabs //安装

#检查安装
crontab -V

#服务操作
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置
service crond status //服务状态

查看配置文件
cat /etc/crontab

查看已经配置的定时任务
crontab -l

编辑新定时任务
crontab -e

查看日志
tail -f /var/log/cron
或者
cat /var/log/cron
格式示例
*/1 * * * * service httpd restart    每一分钟 重启httpd服务
0 */1 * * * service httpd restart 每一小时 重启httpd服务
30 21 * * * service httpd restart 每天 21:30 分 重启httpd服务
26 4 1,5,23,28 * * service httpd restart 每月的1号,5号 23 号 28 号 的4点26分,重启httpd服务
26 4 1-21 * * service httpd restart 每月的1号到21号 的4点26分,重启httpd服务
*/2 * * * * service httpd restart 每隔两分钟 执行,偶数分钟 重启httpd服务
1-59/2 * * * * service httpd restart 每隔两分钟 执行,奇数 重启httpd服务
0 23-7/1 * * * service httpd restart 每天的晚上11点到早上7点 每隔一个小时 重启httpd服务
0,30 18-23 * * * service httpd restart 每天18点到23点 每隔30分钟 重启httpd服务
0-59/30 18-23 * * * service httpd restart 每天18点到23点 每隔30分钟 重启httpd服务
59 1 1-7 4 * test 'date +\%w' -eq 0 && /root/a.sh 四月的第一个星期日 01:59 分运行脚本 /root/a.sh ,命令中的 test是判断,%w是数字的星期几


每周一到周五的11:41开始,每隔10分钟执行一次 #值得借鉴
41,51 11 * * 1-5 root /home/mvp/osyunwei.sh
或者
1-59/10 12-23 * * 1-5 root /home/mvp/osyunwei.sh

在每天的10:31开始,每隔2小时重复一次
31 10-23/2 * * * root /home/mvp/osyunwei.sh

每天15:00执行
0 15 * * * root /home/mvp/osyunwei.sh

每天的10:30开始,每隔2小时重复一次
30 10-23/2 * * * root /home/mvp/osyunwei.sh
其他的一些实例
Cron表达式范例:
每隔5秒执行一次:*/5 * * * * ?

每隔1分钟执行一次:0 */1 * * * ?

每天23点执行一次:0 0 23 * * ?

每天凌晨1点执行一次:0 0 1 * * ?

每月1号凌晨1点执行一次:0 0 1 1 * ?

每月最后一天23点执行一次:0 0 23 L * ?

每周星期天凌晨1点实行一次:0 0 1 ? * L
1、每天6:00执行

0 6 * * * root /home/mvp/osyunwei.sh

2、每周六凌晨4:00执行

0 4 * * 6 root /home/mvp/osyunwei.sh

3、每周六凌晨4:05执行

5 4 * * 6 root /home/mvp/osyunwei.sh

4、每周六凌晨4:15执行

15 4 * * 6 root /home/mvp/osyunwei.sh

5、每周六凌晨4:25执行

25 4 * * 6 root /home/mvp/osyunwei.sh

6、每周六凌晨4:35执行

35 4 * * 6 root /home/mvp/osyunwei.sh

7、每周六凌晨5:00执行

5 * * 6 root /home/mvp/osyunwei.sh

8、每天8:40执行

40 8 * * * root /home/mvp/osyunwei.sh

9、每天8:30执行

30 8 * * * root /home/mvp/osyunwei.sh

10、每周一到周五的11:41开始,每隔10分钟执行一次 #值得借鉴

41,51 11 * * 1-5 root /home/mvp/osyunwei.sh

或者

1-59/10 12-23 * * 1-5 root /home/mvp/osyunwei.sh

11、在每天的10:31开始,每隔2小时重复一次

31 10-23/2 * * * root /home/mvp/osyunwei.sh

12、每天15:00执行

0 15 * * * root /home/mvp/osyunwei.sh

13、每天的10:30开始,每隔2小时重复一次

30 10-23/2 * * * root /home/mvp/osyunwei.sh

14、每天15:30执行

30 15 * * * root /home/mvp/osyunwei.sh

15、每天17:50执行

50 17 * * * root /home/mvp/osyunwei.sh

16、每天8:00执行

0 8 * * * root /home/mvp/osyunwei.sh

17、每天18:00执行

0 18 * * * root /home/mvp/osyunwei.sh

18、每天8:30执行

30 8 * * * root /home/mvp/osyunwei.sh

19、每天20:30

30 20 * * * root /home/mvp/osyunwei.sh

20、每周一到周五2:00

0 2 * * 1-5 root /home/mvp/osyunwei.sh

21、每周一到周五9:30

30 9 * * 1-5 root /home/mvp/osyunwei.sh

22、每周一到周五8:00,每周一到周五9:00

0 8,9 * * 1-5 root /home/mvp/osyunwei.sh

23、每天23:59

59 23 * * * root /home/mvp/osyunwei.sh

24、每周六23:59

59 23 * * 6 root /home/mvp/osyunwei.sh

25、每天0:30

30 0 * * * root /home/mvp/osyunwei.sh

26、每周一到周五9:25到11:35之间、13:00到15:00之间,每隔10分钟运行一次

分区段写值得借鉴

25,35,45,55 9 * * 1-5 root /home/mvp/osyunwei.sh

5-59/10 10 * * 1-5 root /home/mvp/osyunwei.sh

5,15,25,35 11 * * 1-5 root /home/mvp/osyunwei.sh

*/10 13-15 * * 1-5 root /home/mvp/osyunwei.sh

27、每周一到周五8:30、8:50、9:30、10:00、10:30、11:00、11:30、13:30、14:00、14:30、5:00分别执行一次

30,50 8 * * 1-5 root /home/mvp/osyunwei.sh

30 9 * * 1-5 root /home/mvp/osyunwei.sh

*/30 10-11 * * 1-5 root /home/mvp/osyunwei.sh

30 13 * * 1-5 root /home/mvp/osyunwei.sh

0,30 14-15 * * 1-5 root /home/mvp/osyunwei.sh

28、每天23:50执行

50 23 * * * root /home/mvp/osyunwei.sh

29、每天10:00、16:00执行

0 10,16 * * * root /home/mvp/osyunwei.sh

30、每天5:30执行

30 5 * * * root /home/mvp/osyunwei.sh

31、每周一到周五9:30执行

30 9 * * 1-5 root /home/mvp/osyunwei.sh

32、每周一到周五13:00执行

0 13 * * 1-5 root /home/mvp/osyunwei.sh

33、每天7:51执行

51 7 * * * root /home/mvp/osyunwei.sh

34、每天7:53、12:40分别执行一次

53 7 * * * root /home/mvp/osyunwei.sh

40 12 * * * root /home/mvp/osyunwei.sh

35、每天7:55执行

55 7 * * * root /home/mvp/osyunwei.sh

36、每天8:10、16:00、20:00分别执行一次

10 8 * * * root /home/mvp/osyunwei.sh

0 16 * * * root /home/mvp/osyunwei.sh

0 20 * * * root /home/mvp/osyunwei.sh

37、每天7:57、8:00分别执行一次

57 7 * * * root /home/mvp/osyunwei.sh

0 8 * * * root /home/mvp/osyunwei.sh

在26分、29分、33分执行一次:0 26,29,33 * * * ?

每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?

实例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

说明:

run-parts这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是目录名了





版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门