Cron

Cron 语法#

Cron 调度使用一系列由空格分隔的五个数字:

plaintext
1# ┌───────────── minute (0 - 59) 2# │ ┌───────────── hour (0 - 23) 3# │ │ ┌───────────── day of the month (1 - 31) 4# │ │ │ ┌───────────── month (1 - 12) 5# │ │ │ │ ┌───────────── day of the week (0 - 6) (Sunday to Saturday) 6# │ │ │ │ │ 7# │ │ │ │ │ 8# │ │ │ │ │ 9# * * * * * <command to execute>

在 cron 语法中,星号 (*) 表示“每”,因此以下 cron 字符串是有效的:

  • 每小时的开始时运行一次:0 * * * *
  • 每天午夜运行一次:0 0 * * *
  • 每周日凌晨运行一次:0 0 * * 0
  • 每月的第一天午夜运行一次:0 0 1 * *
  • 每月 22 号运行一次:0 0 22 * *
  • 每月的第二个星期一运行一次:0 0 * * 1#2
  • 每年 1 月 1 日午夜运行一次:0 0 1 1 *
  • 每隔一个星期天的上午 9 点运行一次:0 9 * * sun%2
  • 每月 1 号和 15 号凌晨 3 点运行两次:0 3 1,15 * *

Cron 示例#

plaintext
1# 每天 7:00 PM 运行: 20 19 * * * 3 4# 每分钟在 6 月 3 日运行: 5* * 3 6 * 6 7# 每周五 06:30 运行: 830 6 * * 5

极狐GitLab 如何解析 cron 语法字符串#

极狐GitLab 在服务器上使用 fugit 解析 cron 语法字符串,在浏览器中使用 cron-validator 验证 cron 语法。极狐GitLab 使用 cRonstrue 将 cron 转换为浏览器中的人类可读字符串。