Crontab星期几语法


204

在crontab中,星期几字段是从0 - 6还是从1 -7

我看到与此相关的信息冲突。0-6我见过的维基百科州和其他网站都是1-7

同时这将是暗示或或者使用07不正确?也就是说,cron还会继续运行吗?

Answers:


373

07这两种立场星期天,你可以使用你想要的,所以写0-6或1-7具有相同的结果。

此外,通过@Henrik的建议,也可以按天数,如缩短名称来代替数字MONTHU等:

0 - Sun      Sunday
1 - Mon      Monday
2 - Tue      Tuesday
3 - Wed      Wednesday
4 - Thu      Thursday
5 - Fri      Friday
6 - Sat      Saturday
7 - Sun      Sunday

图形化:

 ┌────────── minute (0 - 59)
 │ ┌──────── hour (0 - 23)
 │ │ ┌────── day of month (1 - 31)
 │ │ │ ┌──── month (1 - 12)
 │ │ │ │ ┌── day of week (0 - 6 => Sunday - Saturday, or
 │ │ │ │ │                1 - 7 => Monday - Sunday)
 ↓ ↓ ↓ ↓ ↓
 * * * * * command to be executed

最后,如果要逐日指定,则可以用逗号分隔日期,例如SUN,MON,THU仅在星期日,星期四执行命令。

您可以在Wikipedia上有关Cron的文章中阅读更多详细信息。


4
好的,多数民众赞成在我没有意识到周日可以是0或7的情况。谢谢
Marty Wallace 2013年

15
请注意,您不能执行以下操作:Sat-Sun,只能6-7Sat,Sun
pkowalczyk

您可以确认这不区分大小写吗?您之间切换几次SUNSunSunday在你的回应
MichaelChirico

1
@MichaelChirico哦,好点。检查Wikipedia上有关Cron的文章,我读了月和周日的缩写不区分大小写
fedorqui'SO停止伤害'

104
    :-) Sunday    |    0  ->  Sun
                  |  
        Monday    |    1  ->  Mon
       Tuesday    |    2  ->  Tue
     Wednesday    |    3  ->  Wed
      Thursday    |    4  ->  Thu
        Friday    |    5  ->  Fri
      Saturday    |    6  ->  Sat
                  |  
    :-) Sunday    |    7  ->  Sun

正如您在上面看到的那样,并且如前所述,数字07都分配给星期日。列出的还有星期几的英文缩写,也可以在crontab中使用。

数字或缩写用法示例

15 09 * * 5,6,0             command
15 09 * * 5,6,7             command
15 09 * * 5-7               command
15 09 * * Fri,Sat,Sun       command

这四个示例完全相同,并在每个星期五,星期六和星期日的9.15点执行命令。

详细地

有两个数字07表示星期日对于写以0或开头的工作日范围很有用7。所以,你可以写的范围开始星期日或与它的结局,像0-25-7例如(范围必须先从较低的数字,必须与更高端的)。缩写不能用于定义工作日范围。


1
为了清楚起见,“缩写不能用于定义工作日范围。” 此处的声明似乎是一种说法,即不能用连字符减号来分隔缩写,只能用逗号分隔。换句话说,Fri,Sat,Sun不能缩短为Fri-Sun
Patrick黑暗

8

您还可以使用诸如Mon星期一,Tue星期二等的日期名称。它更加人性化。


这不适用于某些发行版;使用Ubuntu 14.04.3 LTS进行测试,我得到了“ /tmp/crontab.Nuq9GE/crontab":24:星期几不好”
0x4B1D

3
@Nikita检查拼写错误或多余的空格。在Ubuntu 14.04.3的crontab中,我既有“ Mon-Fri”又有“ Thu”,两者都可以正常工作。我怀疑任何字符之间是否都存在空格,您最终会出错。
戴尔·安德森
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.