我正在使用whenever gem来调度作业,但是我不知道如何在每个月底调度作业。下面是我想在每个月底运行的。schedule.rb
every 1.month, at: 'end of the month at 5am' do rake 'update_user', environment: ENV['RAILS_ENV'] end
请帮我解决这个问题
hyrbngr71#
在cron作业中,每月的最后一天比较棘手,但您可以使用原始cron语法指定每月的开始,以运行作业,如下所示:
#runs on at 12:00AM on the first of each month every '0 0 1 * *' do command "echo 'you can use raw cron syntax too'" end
语法为分钟、小时、月中的日、月、周中的日。如果无法选择在月初运行作业,则可以将作业安排在每月的28 - 31日运行,并在take中添加逻辑以仅在每月的最后一天执行作业,如this answer中所述
1条答案
按热度按时间hyrbngr71#
在cron作业中,每月的最后一天比较棘手,但您可以使用原始cron语法指定每月的开始,以运行作业,如下所示:
语法为分钟、小时、月中的日、月、周中的日。
如果无法选择在月初运行作业,则可以将作业安排在每月的28 - 31日运行,并在take中添加逻辑以仅在每月的最后一天执行作业,如this answer中所述