17

これについてインターネット全体を検索しましたが、ドキュメントは実際には月次ジョブについて具体的に述べていません。だから私はここにいる誰かがこれを行う方法を教えてくれることを望んでいました.

いつでもgemをインストールしましたが、知る必要があるのは、これの正しい構文だけです:

every :month, :on => '20th', :at => '02:00' do
  runner "Mailer.send_friend_sheet"
end

誰かが私を正しい方向に向けてくれることを願っています..

ありがとう!

4

4 に答える 4

40

Ruby構文での使用方法がわからない場合は、生のcron構文も使用できます。

あなたが望むものは次のようになります:

every '0 2 20 * *' do
  command "echo 'you can use raw cron syntax 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

于 2011-06-23T12:34:15.303 に答える
11

:on私の知る限り、オプションをサポートしていないときはいつでも、あなたはできるはずです

every '0 2 20 * *' do
  runner "Mailer.send_friend_sheet"
end

'0 2 20 * *'は、単に関連するcron構文です。http://www.manpagez.com/man/5/crontab/を参照してください。

于 2011-06-23T12:34:02.427 に答える
9

さらに良い:

every 1.month, at: 'start of the month at 2am' do
  runner "Mailer.send_friend_sheet"
end
于 2016-01-14T10:05:32.663 に答える