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

树莓派6.1.0系统Cron任务配置问题:任务在不同日期重复执行

Cron任务同时指定日和星期几的行为说明

这不是树莓派6.1.0系统的异常,是Cron的标准规则:当同时指定日(day of month)和星期几(day of week)参数时,Cron会将这两个条件视为**逻辑或(OR)**关系——只要满足其中一个条件,任务就会触发,而非你预期的“同时满足两个条件才执行”。

以你配置的06 21 2 3 6为例,它的实际逻辑是:

  • 3月的2日,无论当天是星期几,21:06执行任务
    或者
  • 3月的每个周六,无论当天是几号,21:06执行任务

所以3月2日(周六)满足两个条件会执行,3月9日(周六)满足第二个条件也会执行,这完全符合Cron的设计逻辑。

如果需要实现“仅在3月2日且当天是周六时执行”的需求,Cron本身不支持这种逻辑与的组合,你可以在任务脚本中添加判断逻辑:

# 检查当前日期是否为3月2日且是周六(%m是两位月份,%d是两位日期,%u是1-7表示周一到周日,周六是6)
if [ "$(date +%m%d%u)" != "03026" ]; then
    exit 0
fi

然后将Cron配置修改为06 21 2 3 *,这样任务会在3月2日21:06触发脚本,脚本内部再判断当天是否为周六,不满足则直接退出,从而实现仅当两个条件都满足时执行的效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 13:33:12