2011-06-23 52 views
-2

我需要每隔4個星期一提醒一次(=每28天)從我開始計算的星期一。所以我想我可以有Ruby腳本每隔4個星期一?

  • 給我發電子郵件(我知道該怎麼做這樣這部分)
  • 每4個週一,不是每4個週一的一個月。 (< ---如何紅寶石此位碼?)

我將通過的cron每星期一運行紅寶石紙條....

+0

更新了我的問題。我的意思是每28分鐘... – Radek

+3

聽起來不錯。你有問題嗎? –

+0

@大衛:至少有四個人理解,你可以看到有四個答案。所以這些問題是第二個要點。 – Radek

回答

1

假設你已經決定了它是一個星期一,再算上天自今年(yday())的開始,模數28,看看結果是在22和27(含)或者是0.

給定一個開始(初始運行)日期,您可以使用step(28)獲取下一個日期,如果它等於當前日期,請運行,然後將其存儲以供下次運行。另外,如果您的意思是本月的第4個星期一,請檢查當月的當前日期,如果是在本月的第22日和第28日之間,那麼您將處於該日的第四次發生那個月的那個星期。

+0

你確定我應該從今年年初算起日子嗎?因爲我想從星期一開始每第四個星期一開始計數? – Radek

+0

我將第一天存儲在源代碼中。也許我可以'只'計算從最初的日期到'今天'的天數,然後使用你的模數28. – Radek

+0

這不是我的決心:-)我需要每隔週四支付租金。 Google日曆在一個月內每隔四個星期一。所以今天我意識到我的付款已經晚了。 – Radek

1

this一試。每當克隆紅寶石。

1

這位先生計算了本月的第一週,如果你每週一用cron運行你的腳本,那麼你只需要通過ruby找出是否是本月的第四周。

http://www.ruby-forum.com/topic/95015

+0

我需要每隔4個星期一=每隔28天提醒一次(查看我的更新問題)不是每個月的第4個星期一。 – Radek

相關問題