问题描述
|
我在互联网上搜索了此文档,但文档并没有真正讨论特定的月度工作。所以我希望这里有人可以告诉我该怎么做。
我已经安装了每当每当gem时,我所需要知道的就是正确的语法:
every :month,:on => \'20th\',:at => \'02:00\' do
runner \"Mailer.send_friend_sheet\"
end
希望有人能指出我正确的方向。
谢谢!
解决方法
据我所知,只要不支持
:on
选项,但您应该可以
every \'0 2 20 * *\' do
runner \"Mailer.send_friend_sheet\"
end
\'0 2 20 * * \'只是相关的cron语法-参见http://www.manpagez.com/man/5/crontab/
, 如果您不知道如何使用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
, 如果您希望它更具可读性,也可以只解析文本中的日期。
every 1.month,:at => \'January 20th 2:00am\' do
runner \"Mailer.send_friend_sheet\"
end
这也会产生generate6ѭ。
, 更好的是:
every 1.month,at: \'start of the month at 2am\' do
runner \"Mailer.send_friend_sheet\"
end