20200813linux学习07(crontab指令)

20200813linux学习07-任务调度(crontab指令)

一、简介

Linux crontab是用来定期执行程序的命令。

当安装完成操作系统之后,默认便会启动此任务调度命令。

crond 命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。

linux 任务调度的工作主要分为两类:

  • 系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存
  • 个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置

二、语法

1.设置用户任务调度命令

crontab指令

crontab [ -u user ] [选项]
  • -u user 是指设定指定 user 的时程表,不使用 -u user 的话,就是表示设定自己的时程表。
  • 选项:
    • -e : 执行文字编辑器来设定时程表,内定的文字编辑器是 VI。
    • -r : 删除目前的时程表
    • -l : 列出目前的时程表

2.调度任务的时间格式:

f1 f2 f3 f4 f5 program

1.位置的含义

项目 含义 取值范围
f1 一小时当中的第几分钟 0~59
f2 一天当中的第几小时 0~23
f3 一月当中的第几天 1~31
f4 一年当中的第几月 1~12
f5 一周当中的星期几 0~7(0和7都是周日)

2.特殊字符的含义

特殊字符 含义 举例
* 任何时间。 f1 为 * 时表示每分钟都要执行
不连续的时间 当 f1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行
- 连续的时间范围 当 f1 为 */n 时表示每 n 分钟个时间间隔执行一次
*/n 每隔多久执行一次 当f2 为 a, b, c,… 时表示第 a, b, c…个小时要执行

三、使用步骤

方式一:

  1. 设置任务调度文件: /etc/crontab
    在这里插入图片描述

  2. 设置用户任务调度。执行crontab [用户] –e命令。

  3. 接着输入任务到调度文件

在这里插入图片描述

  1. 保存,退出。程序自动执行

在这里插入图片描述

&:用户对应的任务调度文件必须有执行权限,可以使用chmod 指令,给用户赋予权限。

方式二:

  1. 设置任务调度文件: /etc/crontab

在这里插入图片描述

  1. 设置用户任务调度。执行crontab [用户] 文件命令。

在这里插入图片描述

  1. 程序自动执行

四、相关指令

crontab -r 终止任务调度

crontab -l 列出当前有那些任务调度

service crond restart 重启任务调度服务

在这里插入图片描述

学习参考:

B站尚硅谷

菜鸟linux教程

原文地址:https://www.cnblogs.com/sepZhang/p/13503735.html