You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置crontab实现两个耗时2天的测试任务交替运行

crontab双任务交替运行配置方案

原思路存在逻辑错误:能被4整除的日期天然满足「同时被2和4整除」的判定条件,会导致两个任务在同一天触发,完全无法实现交替运行的效果。

要实现两个任务交替运行、单任务执行周期2天的需求,正确的触发规则应为:

  • 任务1:当月日期数除以4余数为0时触发,每4天执行1次
  • 任务2:当月日期数除以4余数为2时触发,每4天执行1次
    两者触发时间刚好间隔2天,正好可以衔接各自2天的运行时长,实现交替执行。

具体配置示例

crontab中可以嵌入shell判断逻辑实现自定义日期判定,注意crontab语法中%属于特殊字符需要转义,要写成\%。
假设你需要在每天0点触发测试任务,配置如下:

# 任务1:当月日期模4等于0时触发,比如4号、8号、12号...
0 0 * * * [ $((`date +\%d` \% 4)) -eq 0 ] && /bin/bash /path/to/你的第一个测试脚本路径.sh

# 任务2:当月日期模4等于2时触发,比如2号、6号、10号...
0 0 * * * [ $((`date +\%d` \% 4)) -eq 2 ] && /bin/bash /path/to/你的第二个测试脚本路径.sh

如果需要调整触发时间,比如改成每天凌晨2点执行,只需把每行开头的0 0修改为0 2即可。

边界情况说明

基于当月日期的判定规则会受月份天数影响(比如2月只有28/29天、大月有31天),月末到下月初可能出现最多2天的执行空窗或偏差。如果你对执行间隔的精度要求极高,可以在测试脚本中新增状态记录逻辑,每次执行时校验距离上次执行的间隔、切换执行的任务类型,不依赖自然日期判定。

内容的提问来源于stack exchange,提问作者Maciek Kucharski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 05:24:01