博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux中使用crontab命令启用自定义定时任务
阅读量:6683 次
发布时间:2019-06-25

本文共 1734 字,大约阅读时间需要 5 分钟。

一 简介

Linux下的任务调度分为两类,系统任务调度和用户任务调度

  • 系统任务调度:系统需要定期执行的任务,比如重启、日志清理等,其配置文件是:/etc/crontab

  • 用户任务调度:某个用户需要定期执行的任务。用户可以使用 crontab 命令来配置自己的定时任务。所有用户配置的定时任务都存放在 /var/spool/cron/ 目录下,其文件名与用户名一致。如:root用户的所有定时任务就保存在 /var/spool/cron/root 文件中

二 crontab文件的含义

所有用户crontab文件都存放在 /var/spool/cron/ 目录下,以用户名命名。其中每一行都代表一项任务,每行的每个字段代表一项配置,它的格式一共分为六个字段,前五段是时间设置段,第六段是要执行的命令段,格式如下:

minute hour day month week command

  • minute: 表示分钟,可以是从0到59之间的任何整数

  • hour:表示小时,可以是从0到23之间的任何整数

  • day:表示日期,可以是从1到31之间的任何整数

  • month:表示月份,可以是从1到12之间的任何整数

  • week:表示星期,可以是从0到7之间的任何整数,这里的0或7代表星期日

  • command:表示需要执行的命令,可以是系统命令,也可以是自己编写的脚本文件

在以上各个字段中,还可以使用以下特殊字符:

  • *    代表所有可能的值,例如:如果month字段是星号,则表示在满足其它字段的约束条件后每月都执行该命令

  • ,     用逗号隔开的值表示一个范围列表,例如:如果minute字段的值是“1,3,15”,则表示每小时的第1分钟、第3分钟和第15分钟都执行该命令

  • –    可以用整数之间的 – 表示一个整数范围,例如:如果day字段的值是“2-6”,则表示每月的第2天到底6天都执行该命令

  • /    可以用斜线表示命令的执行频率,例如:如果minute字段的值是“*/10”,则表示每十分钟执行一次命令

三 一个定时任务实例

某台服务器每10分钟向192.168.1.2进行时间同步:

1
[root@web01 
cron
]
# vim /var/spool/cron/root

添加以下内容:

1
0-59
/10 
* * * * 
/usr/sbin/ntpdate 
-s 192.168.1.2

从上面的介绍可以知道,这句代码的意思是:从0到59分这个时间段每10分钟都执行时间同步命令,其时间同步服务器是192.168.1.2

四 一些其他实例

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

本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1861352,如需转载请自行联系原作者

你可能感兴趣的文章
RHEL7.1配置本地yum源
查看>>
Mybatis Generator最完整配置详解
查看>>
Hash学习
查看>>
PHP按符号截取字符串的指定部分
查看>>
在Blender导出格式为STL
查看>>
我的友情链接
查看>>
酒有两不喝,财有两不发,忙有三不帮,亲有三不走!
查看>>
IPFS 服务的Python访问
查看>>
DllMain详解
查看>>
Class bytes found but defineClass()failed for error when deploying EAR
查看>>
IIS7.0安装的FTP建账号
查看>>
spring --理解
查看>>
前台中文数据后台achieveRequest().getParameter获取乱码问题
查看>>
sed工具扩展学习
查看>>
db4o 参考资料
查看>>
mysql生产环境___主从同步修复案例
查看>>
对Controller的单元测试
查看>>
人工智能无法挑战人心
查看>>
移动web 1px边框解决方案
查看>>
centos7.4 Rsync配置和触发备份
查看>>