linux定时任务

一 、简介

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

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

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

二、crontab文件的含义

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

image.png

语法:

crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ]

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

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

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

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

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

三、一个定时任务实例

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

添加下面的命令:

每1分钟执行一次command

* * * * * command

在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * command

每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2 * * command

你可能感兴趣的:(linux定时任务)