2015-07-20 49 views
0

我想在月末運行rake任務,但根據下面的帖子,cron並沒有提供簡單的方法。如何在每個月末使用月末運行作業

Cron job to run on the last day of the month

所以我寫這樣的:

every "50 23 30 4,6,9,11 *" do 
    rbenv_rake "foo:update" 
end 
every "50 23 31 1,3,5,7,8,10,12 *" do 
    rbenv_rake "foo:update" 
end 
every "50 23 28 2 *" do 
    rbenv_rake "foo:update" 
end 

是否有每當寫的代碼更簡單的包裝方法?

+0

0 50 23 L *?你試過這個嗎?我從http://www.quartz-scheduler.org/documentation/quartz-1.x/tutorials/crontrigger檢查了這個鏈接。不知道它是否會幫助你。因爲wiki說L是不標準的。但你可以試試看。 – Athar

+0

謝謝,但如果它不是標準的方式,我會堅持我寫的方式。即使它適用於我目前的環境,我也不想使用不確定的代碼。 – ironsand

+0

是的,這是最好的辦法。保持標準化 – Athar

回答

0

爲什麼10分鐘後你不能運行一些腳本?

every "0 0 1 * *" do 
    rbenv_rake "foo:update" 
end 
+0

因爲在腳本中我使用日期,所以它的工作方式不同。 – ironsand

0

應該試試這個 -

every 1.month, :at => '00:00am' do 
    rbenv_rake "foo:update" 
    end