【问题标题】:Best way to schedule job to run every other day? [closed]安排工作每隔一天运行一次的最佳方式? [关闭]
【发布时间】:2020-12-02 03:15:59
【问题描述】:

我想运行一个每天晚上运行的 cronjob 并运行一个备份脚本,但我想在替换最旧的备份之前保留两天的备份。 我能想到的唯一方法是每周执行一天的 cronjob 并运行两个 cronjob,每个都替换两天前自己执行的任务。 有没有更简单的方法来做到这一点?

【问题讨论】:

    标签: bash cron


    【解决方案1】:

    使用*/2 表示月份中的某天,如下所示:

    01 23 */2 * * command_name
    

    每月 1、3、...、31 日 23:01 运行。

    隔天运行两个 cron 作业

    01 23 1-31/2 * * command_name1
    01 23 2-30/2 * * command_name2
    

    另请参阅:

    时间和日期字段是:

       field          allowed values
       -----          --------------
       minute         0-59
       hour           0-23
       day of month   1-31
       month          1-12 (or names, see below)
       day of week    0-7 (0 or 7 is Sunday, or use names)
    

    一个字段可能包含一个星号 (*),它始终代表 “先到后”。 ... 步进值 也允许在星号后使用,因此如果指定要执行的作业 每两小时运行一次,您可以使用“*/2”。

    【讨论】:

    • 谢谢我将如何在本月的第二天执行第二个命令。您的示例将在 1 日 3 日 5 日等运行。 2号4号6号呢?
    • @StefanMarkov 更新了答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-17
    • 1970-01-01
    • 2019-01-19
    • 2015-10-24
    • 1970-01-01
    相关资源
    最近更新 更多