【问题标题】:When does this cron job get executed?这个 cron 作业什么时候执行?
【发布时间】:2015-04-24 21:42:53
【问题描述】:

我在 crontab 中看到了这个 cron 设置,我很好奇脚本何时实际执行。

8 10 * * 6 expr `date +\%W` \% 2 == 1 >/dev/null || /path/to/script/scriptToRun.sh

【问题讨论】:

    标签: unix cron cron-task cronexpression


    【解决方案1】:

    这么挑剔的语法……

    8 10 * * 6 expr `date +\%W` \% 2 == 1 >/dev/null || /path/to/script/scriptToRun.sh
    

    首先,cronjob:

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

    所以在这种情况下,这意味着 cronjob每周六 10 点 8 点执行。

    然后,man date 说:

    %W

    一年中的周数,周一为一周的第一天 (00..53)

    $(date +\%W) \% 2 == 1 >/dev/null 表示:如果周数不是 2 的倍数,则将输出发送到 dev/null。否则,正常进行。

    所以脚本会在每隔一个星期六的 10:08 执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-17
      • 2019-05-02
      • 1970-01-01
      • 1970-01-01
      • 2014-07-23
      • 1970-01-01
      • 2018-06-05
      • 1970-01-01
      相关资源
      最近更新 更多