1、概述:
crontab 用于周期性被执行的指令,该指令从标准设备输入指令,并将指令存放在crontab文件中,供之后读取和执行。
与crontab相关的文件一共有三个:
/etc/crontab 存放被定期执行的指令
/etc/cron.deny 不能使用crontab的用户
/etc/cron.allow 可以使用crontab的用户
以上两个文件都有的时候allow优先,都没有的时候只能root用户使用
2、crontab的命令
crontab -e 使用文字编辑器来编辑时程表
crontab -l 查看时程表
crontab -r 删除时程表
crontab -v 列出用户crontab状态
3、crontab的编写规则
* * * * * command path
调度命令规则
字段名称 | 说明 | 取值范围 |
分钟 | 每小时的第几分钟执行 | 0-59 |
小时 | 每日的第几个小时执行 | 0-23 |
日期 | 每月的第几天执行 | 1-31 |
月历 | 每年的第几月执行 | 1-12 |
星期 | 每周的第几天执行 | 0-6 |
命令名称 | 欲执行的命令及参数 | |
常用特殊符号
符号 | 说明 |
* | 表示任何时刻 |
, | 表示分割 |
- | 表示一个段,如第二段里: 1-5,就表示1到5点 |
/n | 表示每个n的单位执行一次,如第二段里,*/1, 就表示每隔1个小时执行一次命令。也可以写成1-23/1. |
4、cron的服务启动
我么可以通过 chkconfig --list | grep cron 来查看cron的服务启动情况
[root@xiaoluo home]# chkconfig --list | grep cron crond 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
我么可以看到如果系统的级别是1-4 ,cron的服务都会开机自启动。我们可以使用如下命令来设置服务器的启动项:
/sbin/service crond start
/sbin/service crond restart
/sbin/service crond stop
/sbin/service crond relaod
如果要把crond设置为开机自动启动可以在,/etc/rc.d/rc.local 脚本中加入/sbin/service crond start
关于crontab的简要介绍至此完!