开篇词
crontab
是一个用于配置调度任务的工具。它还同时维护每个用户各自的 crontab 文件。
选项
这里是 crontab
命令的一些选项:
选项 | 描述 |
---|---|
-u user |
更改指定用户的 crontab。 |
-e |
更改用户的 crontab。 |
-l |
列出用户的 crontab。 |
-r |
删除用户的 crontab。 |
-i |
需要用户的确认以执行删除操作。 |
Crontab 文件
作业定义
时间及日期字段 | 用户名 | 命令 |
---|---|---|
* * * * * | [root] | wall ‘广播消息’ [而不接收邮件: > /dev/null or &> /dev/null] |
时间及日期字段
字段 1 | 字段 2 | 字段 3 | 字段 4 | 字段 5 |
---|---|---|---|---|
* | * | * | * | * |
分钟 | 小时 | 日 | 月 | 天 |
0-59 | 0-23 | 1-31 | 1-12 或 Jan-Dec | 0-7 或 Mon-Sun |
时间及日期昵称
昵称 | 定义 | 实际意思 |
---|---|---|
@hourly | 0 * * * * | 按小时执行。 |
@daily | 0 0 * * * | 按日执行。 |
@weekly | 0 0 * * 0 | 按周执行。 |
@monthly | 0 0 1 * * | 按月执行。 |
@annually 或 yearly | 0 0 1 1 * | 按年执行。 |
@reboot | 重启后执行。 |
时间及日期字段采用率
字段 | 描述 |
---|---|
N | 在字段的有效值内指定一个值。 |
* | 字段有效范围内所有的值。 |
N,N,N | 字段有效范围内的多个值。 |
N-N | 字段有效范围内的范围值。 |
*/N | 字段最大值能除去的数。 |
例子
检查 crond 是否在运行中
systemctl status crond
如果未安装,则进行安装操作:
yum install cronie
检查 crontab 配置
cat /etc/crontab
这里是 /etc/crontab
文件内的一些配置
字段 | 描述 |
---|---|
SHELL |
crontab 使用的 Shell。 |
PATH |
crontab 命令执行的路径,若命令不在这些目录中,则需要指定完整路径。 |
MAILTO |
在 crontab 命令执行后收到消息的用户。 |
每份运行一次命令
# /dev/null 意思是不发送邮件给用户,除非报错
crontab -e # 将以编辑模式打开作业定义文件
*/1 * * * * /usr/bin/wall '每分钟传播一次该消息.' > /dev/null
如果 crontab 是第一次被创建,则将在创建后输出以下信息:
几分钟后:
列出调度的作业
crontab -l
确认并删除调度的作业
crontab -l
crontab -ri # 在该阶段:输出 y 或 yes 并按下回车
crontab -l
我所撰写的英文版本
引用
参见
上一篇:
想看手册的其他内容?请访问该手册的所属专栏:《Linux 管理员手册:既简单又深刻》