Rails + Whenever: запускать задачи с одинаковым расписанием в разные дни

Я использую каждый раз, когда драгоценный камень, чтобы запустить расписание заданий. Мой schedule.rb имеет что-то вроде этого:

every 3.days, :at => '2:10 pm' do
   runner "Something.task()"
end

every 3.days, :at => '1:10 pm' do
   runner "Something.othertask()"
end

Дело в том, можно ли определить, что первое задание начинает выполняться сегодня, а другое - только завтра? Поэтому они никогда не будут бегать в один и тот же день.

1 ответ

Решение

Вы также можете использовать необработанный синтаксис cron, если не можете понять, как использовать синтаксис ruby.

То, что вы хотите, будет выглядеть так:

every '0 2 20 * *' do
  command "echo 'you can use raw cron sytax too'"
end

Вот краткая инструкция по использованию синтаксиса cron

*     *     *   *    *        command to be executed
-     -     -   -    -
|     |     |   |    |
|     |     |   |    +----- day of week (0 - 6) (Sunday=0)
|     |     |   +------- month (1 - 12)
|     |     +--------- day of month (1 - 31)
|     +----------- hour (0 - 23)
+------------- min (0 - 59)

от: http://adminschoice.com/crontab-quick-reference

Другие вопросы по тегам