一个月中倒数第二个星期的 Cron 表达式
Cron expression for the second to last day of week of the month
我想触发这个月的倒数第二个星期。
通常,这是该月的最后一个星期五(例如:30/06/2017)
0 0 0 ? * FRIL
我想要倒数第二个(例如:23/06/2017)
0 0 0 ? * FRIL-1
但是这种语法 return 与以前的结果相同(使用 Quartz 调度程序和 cronmaker)
一个月中的倒数第二周可以出现在该月的第三周或第四周。
所以它是:
either : 0 0 0 ? * FRI#3
or : 0 0 0 ? * FRI#4
你有什么建议吗?
我认为您无法使用 cron 语法来表达。
不过,我可以想到一些解决方法:
您可以安排每个星期五的工作,并有一些工作中的逻辑来检查它是否真的是倒数第二个,然后再继续。
另一种选择是为上周五创建一个虚拟 cron 触发器,检索 "next fire time",从该日期减去 7 天并使用该确切日期创建实际触发器 --但是你必须每周都这样做(通过预先安排几个触发器,或者让你的工作在每个运行之后重新安排)。
我想触发这个月的倒数第二个星期。
通常,这是该月的最后一个星期五(例如:30/06/2017)
0 0 0 ? * FRIL
我想要倒数第二个(例如:23/06/2017)
0 0 0 ? * FRIL-1
但是这种语法 return 与以前的结果相同(使用 Quartz 调度程序和 cronmaker)
一个月中的倒数第二周可以出现在该月的第三周或第四周。 所以它是:
either : 0 0 0 ? * FRI#3
or : 0 0 0 ? * FRI#4
你有什么建议吗?
我认为您无法使用 cron 语法来表达。
不过,我可以想到一些解决方法:
您可以安排每个星期五的工作,并有一些工作中的逻辑来检查它是否真的是倒数第二个,然后再继续。
另一种选择是为上周五创建一个虚拟 cron 触发器,检索 "next fire time",从该日期减去 7 天并使用该确切日期创建实际触发器 --但是你必须每周都这样做(通过预先安排几个触发器,或者让你的工作在每个运行之后重新安排)。