时间表格式

{pve} 具有非常灵活的调度配置。它基于 systemd 时间日历事件格式。脚注:[有关更多信息,请参见 man 7 systemd.time] 日历事件可以用于在单个表达式中引用一个或多个时间点。

这样的日历事件使用以下格式:

星期几 年-月-日 小时:分钟[:秒]

这种格式允许您配置一组应运行作业的日期。您还可以设置一个或多个开始时间。它告诉复制调度器作业应该开始的时间点。有了这些信息,我们可以创建一个在每个工作日晚上10点运行的作业:'mon,tue,wed,thu,fri 22',这可以缩写为:'mon..fri 22',大多数合理的计划都可以用这种直观的方式写出来。

Note
小时采用24小时制格式。

为了允许方便且更简短的配置,可以设置一个或多个每个访客的重复次数。它们表示在开始时间本身及开始时间加上重复值的所有倍数上执行复制。如果您想在上午8点开始复制,并每15分钟重复一次直到上午9点,您应使用:’8:00/15'

在这里你可以看到,如果没有使用小时分隔符(:),那么该值会被解释为分钟。如果使用了这样的分隔符,左边的值表示小时数,右边的值表示分钟数。此外,你可以使用`*`来匹配所有可能的值。

为了获取更多的想法,请查看下面的更多示例

详细规格

工作日

天数用缩写的英文版本指定:sun, mon, tue, wed, thu, fri and sat。你可以使用逗号分隔的列表来指定多个天数。天数范围也可以通过指定开始和结束天数并用``..''分隔来设置,例如`mon..fri`。这些格式可以混合使用。如果省略,假定为’*'`。

时间格式

时间格式由小时和分钟的间隔列表组成。小时和分钟之间用’:'`分隔。小时和分钟可以是列表和值范围,使用与日期相同的格式。首先是小时,然后是分钟。如果不需要小时,可以省略不写。这种情况下,小时的值假定为’*'`。有效值范围是`0-23`小时和`0-59`分钟。

范例:

有一些特殊的值具有特定的含义:

Table 1. 特殊值
数值 语法

minutely

--* ::00

hourly

--* *:00:00

daily

--* 00:00:00

weekly

mon --* 00:00:00

monthly

--01 00:00:00

yearly or annually

*-01-01 00:00:00

quarterly

*-01,04,07,10-01 00:00:00

semiannually or semi-annually

`*-01,07-01 00:00:00

Table 2. 时间表示例
时间表字符串 替代 含义

周一,周二,周三,周四,周五

周一..周五

每个工作日的0:00

周六,周日

周六..周日

只在周末的0:00

周一,周三,周五

 — 

只在周一、周三和周五的0:00

12:05

12:05

每天的下午12:05

*/5

0/5

每五分钟

周一..周三 30/10

周一,周二,周三 30/10

周一、周二、周三每个整点后的30、40和50分钟

周一..周五 8..17,22:0/15

 — 

每个工作日的上午8点至下午6点和晚上10点至11点之间,每15分钟

周五 12..13:5/20

周五 12,13:5/20

周五在12:05、12:25、12:45、13:05、13:25和13:45

12,14,16,18,20,22:5

12/2:5

每天从12:05开始直至22:05,每2小时一次

*

*/1

每分钟(最小间隔)

*-05

 — 

每月的第5天

周六 *-1..7 15:00

 — 

每月的第一个周六在15:00

2015-10-21

 — 

2015年10月21日的0:00