cron 表达式每 6 个月运行一次,并在每月的第二个星期五运行
cron expression to run every 6 months and on second friday of the month
我的 cron(Java Quartz 作业调度程序)表达式应该在 1 月 9 日中午 12 点(本月的第二个星期五)触发,下一个计划应该是从 1 月 9 日开始的 6 个月和该月的第二个星期五,并且时间中午 12 点。
下面的表达式会按预期工作吗?
* * 12 ? 1/6 6#2
此致,
大坝
您的 1/6
需要包括以 6 个月为步长涵盖的全部范围。
因此,例如,1-7/6
将从第 1 个月(1 月)开始,然后转到第 7 个月(7 月)作为下一个计划运行,因为它涵盖了从 1-7 的范围以 6 步为单位。
你的完整命令应该是
0 12 8-14 1-7/6 5
解读:
0
= 运行 仅在分钟 :00,
12
= 运行 中午,
8-14
运行 仅在一个月中的 8-14 日期间(第二个星期五只能落在这些日期中的一个,第一个星期五不能落在其中任何一个),
1-7/6
运行 仅在第 1 个月(一月)或第 7 个月(七月),
5
并且仅在第 5 天(即星期五,因为星期日的索引为 0 或 7)。
由于 cron 运行s 仅当上述所有条件都匹配时,命令将在 1 月和 7 月的第二个星期五中午 12 点 运行。
0 0 12 ? 1-7/6 6#2
0 --> run only at Secs :00
0 --> run only at minute :00
12 --> Runs on 12 noon
? --> no specific value
1-7/6 --> runs only on months 1 (January) or 7 (July)
6#2 --> Second friday of the month
Next few Schedules
1. Friday, January 9, 2015 12:00 PM
2. Friday, July 10, 2015 12:00 PM
3. Friday, January 8, 2016 12:00 PM
4. Friday, July 8, 2016 12:00 PM
5. Friday, January 13, 2017 12:00 PM
我的 cron(Java Quartz 作业调度程序)表达式应该在 1 月 9 日中午 12 点(本月的第二个星期五)触发,下一个计划应该是从 1 月 9 日开始的 6 个月和该月的第二个星期五,并且时间中午 12 点。
下面的表达式会按预期工作吗?
* * 12 ? 1/6 6#2
此致, 大坝
您的 1/6
需要包括以 6 个月为步长涵盖的全部范围。
因此,例如,1-7/6
将从第 1 个月(1 月)开始,然后转到第 7 个月(7 月)作为下一个计划运行,因为它涵盖了从 1-7 的范围以 6 步为单位。
你的完整命令应该是
0 12 8-14 1-7/6 5
解读:
0
= 运行 仅在分钟 :00,
12
= 运行 中午,
8-14
运行 仅在一个月中的 8-14 日期间(第二个星期五只能落在这些日期中的一个,第一个星期五不能落在其中任何一个),
1-7/6
运行 仅在第 1 个月(一月)或第 7 个月(七月),
5
并且仅在第 5 天(即星期五,因为星期日的索引为 0 或 7)。
由于 cron 运行s 仅当上述所有条件都匹配时,命令将在 1 月和 7 月的第二个星期五中午 12 点 运行。
0 0 12 ? 1-7/6 6#2
0 --> run only at Secs :00
0 --> run only at minute :00
12 --> Runs on 12 noon
? --> no specific value
1-7/6 --> runs only on months 1 (January) or 7 (July)
6#2 --> Second friday of the month
Next few Schedules
1. Friday, January 9, 2015 12:00 PM
2. Friday, July 10, 2015 12:00 PM
3. Friday, January 8, 2016 12:00 PM
4. Friday, July 8, 2016 12:00 PM
5. Friday, January 13, 2017 12:00 PM