【问题标题】:Cron: Run every thursday before last Sunday of the monthCron:每月最后一个星期日之前的每个星期四运行
【发布时间】:2016-01-26 02:33:42
【问题描述】:

我想在指定月份的最后一个星期日之前的星期四启动一个 cron 脚本。警告:最后一个星期四并不总是在月底的最后一个星期日之前。

我想做的是在 3 月和 10 月最后一个星期日之前的星期四向我们的用户发送一封邮件,当时夏令时开始和结束。

我发现 herehere 有类似的问题和解决方案:

00 20 * 3,10 4 [ $(date +"\%m") -ne $(date -d 7days +"\%m") ] && $HOME/bin/mailstub

这会检查今天的月份是否不等于 7 天后的月份。如果不相等,则为该月的最后一个星期一。

如何计算该月最后一个星期日的前 3 天(= thursday)?

非常感谢!

【问题讨论】:

  • 这看起来更像是一个 Unix 问题。建议你移到unix.stackexchange.com
  • @W.Prins 我认为这是编程,因为它是关于如何编写 date 表达式来计算我们是否在一个月中的特定日期。
  • 是的,但是 bash/shell 编码和 cron 通常包含在 unix.stackexchange 上。另外请更新您的标签,这与php无关。

标签: shell date cron


【解决方案1】:

检查下个星期日是否与今天同月,但第二个星期日不是:

00 20 * 3,10 4 [ $(date +"\%m") -eq $(date -d 3days +"\%m") ] && [ $(date +"\%m") -ne $(date -d 10days +"\%m") ] && $HOME/bin/mailstub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多