Cron 我可以给詹金斯设置'&引用;“定期建造”;从3月13日开始每隔周二建造一次?

Cron 我可以给詹金斯设置'&引用;“定期建造”;从3月13日开始每隔周二建造一次?,cron,jenkins,crontab,cronexpression,Cron,Jenkins,Crontab,Cronexpression,我想安排詹金斯在每个星期一、星期三、星期四和星期五上午8:00执行某项工作,每隔星期二上午8:00执行 现在,我能想到的最好的办法是: # 8am every Monday, Wednesday, Thursday, and Friday: 0 8 * * 1,3-5 # 8am on specific desired Tuesdays, one line per month: 0 8 13,27 3 2 0 8 10,24 4 2 0 8 8,22 5 2 0 8 5,19 6 2 0 8

我想安排詹金斯在每个星期一、星期三、星期四和星期五上午8:00执行某项工作,每隔星期二上午8:00执行

现在,我能想到的最好的办法是:

# 8am every Monday, Wednesday, Thursday, and Friday:
0 8 * * 1,3-5

# 8am on specific desired Tuesdays, one line per month:
0 8 13,27 3 2
0 8 10,24 4 2
0 8 8,22 5 2
0 8 5,19 6 2
0 8 3,17,31 7 2
0 8 14,28 8 2
0 8 11,25 9 2
0 8 9,23 10 2
0 8 6,20 11 2
0 8 4,18 12 2
这对2012年剩下的时间来说是好的(如果难看的话),但它几乎肯定不会在2013年达到我想要的效果


有没有更简洁的方法来实现这一点,或者是一种独立的方法?这是一种经常出现的方法,例如,或


答案基本上是否定的。在您的情况下,我会做的是每周二运行作业,并让第一个构建步骤检查是否实际运行,例如检查文件是否存在,并且仅在文件不存在时运行。如果存在,则会将其删除,以便下次执行此检查时作业可以运行。当然,您还必须检查是否是星期二。

我使用Excel生成cron表达式。以下公式从10月22日起每隔周一上午8:00生成一次

      A      B              C               D
1    41204  =MONTH(A1)  =DAY(A1)        =CONCATENATE("0 8 ", C1, " ", B1, " 1")
2    =A1+14 =MONTH(A2)  =DAY(A2)    =CONCATENATE("0 8 ", C2, " ", B2, " 1")
这就产生了

    A       B       C       D 
1   22-Oct  10  22  0 8 22 10 1
2   5-Nov   11  5   0 8 5 11 1

只需自动填充第2行即可获得额外天数。我不知道你能给詹金斯多少单独的表达。我知道它适用于26个表达式。

如果您每隔一个星期二放弃一次,并且可以满足于每个月的第一个和第三个星期二,那么以下方法应该有效: 0 9 1-7 * 2 0 9 15-21*2

你每天从1点到7点跑步,但只在周二,从15点到21点每天跑步,同样只在周二。在这些时间间隔中,星期二只会出现一次

是的,严格来说不是每隔一周一次,因为5个星期二会让你失去节奏,但这里你有一个可预测的工作时间表,不需要随着时间的推移在詹金斯进行调整。

我给你发了传真:

10 22 1-7,14-21,28-31 * 6