Linux 定时任务 crontab


crontab 是一个守护进程,在指定的时间运行。每个用户都有独立的crontab,因此不需要用 su来执行。

除了在 Linux 上运行外,Jenkins里面的job设置也可以用这个,支持这个语法的都可以。

语法

类似下面这样的,分别代表的是 minutes、hour、day、month、week。

5 0 * 8 *
# 8月每天的凌晨00:05分运作

有效值

通用的如下4个

*	任何值
,	逗号是分隔符
-	代表一个范围
/	每几分钟运行

minute

0-59 有效值

比如 5-20/5,就是从第5分钟到20分钟,间隔5分钟运行一次

hour

0-23 有效值

比如 */50,就是每50个小时运行

day

1-31 有效值

比如 4,5,31,就是当月的4、5、31号运行,有人可能会问了,如果指定的是2月,会报错么?实际上是不会报错的。

month

1-12 有效值
JAN-DEC 这个是对于的英文,也是有效的

比如 JAN-JUL/2,就是1月到7月的间隔2个月运行一次

week

0-6 有效值
SUN-SAT  这个是对于的英文,也是有效的
7 这个是指的是周日,估计是老外的周日是第一天有关系。

因为有效值是 0 - 6,如果指定是0-7这样有可能不工作,因此建议不要使用x-7这样的表达式。可以这样表达2-6,7

利器

如果记不到这个是什么意思,也不知道怎么用的话,建议可以参考下下面的网站

https://crontab.guru/

原文地址:https://www.cnblogs.com/ievjai/p/14382667.html