我们如何将cron表达式修改为不在特定日期(例如12月28日和2月3日)运行

时间:2019-01-04 12:37:52

标签: cron

  • 我已经有一个cron表达式,例如:“ 35 6 * * 2-6”,它表示 该工作将从周二至周六每天早上6:35进行。
  • 我想从此表达式中排除12月28日和2月3日。
  • 我们正在用Java代码评估此cron表达式。
  • 这些表达式适用于用Java编写的作业。
  • 有一个上级工作A。
  • 它有两个子作业A1和A2。
  • 要使作业A运行,A1和A2都应该成功。
  • 我需要使用以下命令为A1和A2配置此特殊的日期参数 现有的cron条件。
  • A1和A2都不应该在12月28日和2月3日运行。
  • 任何人都可以提供帮助。

1 个答案:

答案 0 :(得分:0)

您可以将您的cronjob分为三个部分:

35 6 *          1,3-11 2-6 A1.sh && A2.sh
35 6 1-2,4-28   2      2-6 A1.sh && A2.sh
35 6 1-27,29-31 12     2-6 A1.sh && A2.sh

其中A1.shA2.sh是将执行子作业A1A2的Shell脚本。确保外壳程序脚本具有正确的权限。