我想在早上6點鐘和晚上6點鐘的時間內每2周運行一次石英工作。如何實現這一點。請教建議。每2周和每天2次(上午6點和下午6點)的石英克朗觸發器
我試着用下面的cron表達式
01 01 1 1-0/14 01 ? *
安排,但接下來的火時間如下。
- 週日,2017年1月1日上午1:01
- 週日,2017年1月15日上午1:01
- 週日,2017年1月29日上午1:01
- 週一,一月1,2018上午1:01
- 週一,2018年1月15日上午1:01
我想在早上6點鐘和晚上6點鐘的時間內每2周運行一次石英工作。如何實現這一點。請教建議。每2周和每天2次(上午6點和下午6點)的石英克朗觸發器
我試着用下面的cron表達式
01 01 1 1-0/14 01 ? *
安排,但接下來的火時間如下。
- 週日,2017年1月1日上午1:01
- 週日,2017年1月15日上午1:01
- 週日,2017年1月29日上午1:01
- 週一,一月1,2018上午1:01
- 週一,2018年1月15日上午1:01
有一些種類的日期觸發器cron擅長。每N天往往不是其中之一。舉例來說,如果你使用的是這樣的:
0 0 6,18 */14 * ?
你可能會得到這樣的事情:
正如你可以看到,29個,其次是1 - 不完全14天分開。
有一些東西可以讓你玩表達式並查看結果日期,這很有用。 CronMaker可以做到這一點,如果這是有幫助的。
但是,既然你說你正在使用Quartz,它支持其他類型的觸發器,如DateIntervalTrigger
,可能更適合你正在尋找的?
但我的問題是3月29日之後它在2天內解僱了工作。我的要求就像2016年3月29日星期二下午6:00 2016年4月12日星期五上午6:00 –
啊,對。不幸的是,cron很擅長表達某種時間表,在其他時間表上表現不是很好。當你超過某個特定點時,你就會開始做一些事情,比如每天只調用一次腳本,並讓腳本決定是否應該調用它(每14天)。這並不好,但是cron不支持每個想要的時間表。 –
也許你可以解釋一下你希望下一次的火災時間是什麼,因爲我不確定我是否清楚地理解了這個問題。你希望它在相隔12小時的上午6點和下午6點發射,但是之後又不會再發生14天,然後又短期連續兩次? –
更新了cron表達式01 01 6,18 1-0/14 01? *。下次火災時間如下所示1. \t 2017年1月1日星期日上午6點01分 2. \t 2017年1月1日星期日下午6點01分 3. \t 2017年1月15日星期日上午6點01分 4. \t週日,2017年1月15日下午6:01 5. \t週日,2017年1月29日6:01 6. \t週日,2017年1月29日下午6:01 週一,1月1日, 2018 6:01 AM 8. \t 2018年1月1日星期一下午6:01 9。\t 2018年1月15日星期一上午6:01 10. \t 2018年1月15日星期一下午6:01 –
我想知道什麼是你希望表達產生的火時刻,以便我確信給你正確的修改表達。 –