速查表 · Cron 速查表 · Cron 每月 1 号执行 — Crontab 示例

Cron 每月 1 号执行 — Crontab 示例

0 0 1 * *

每月 1 号的 00:00(午夜)执行。

逐字段解释

字段值含义
分钟0第 0 分
小时0午夜
每月几号1每月 1 号
月份*每个月
星期几*星期几都行

月初任务(开票、清理、按周期出报表)的做法是把几号限制成 1,星期几保持通配。保持 * 很关键 — 并集规则意味着再叠加一个星期限制,就会在额外的日子触发。

@monthly 简写正是这条表达式。

0 0 1 * * /usr/local/bin/monthly-invoice.sh

相关调度

常见问题

有 @monthly 简写吗?
有 — @monthly 等于 0 0 1 * *,即每月 1 号午夜。

1 号那天服务器正好宕机呢?
那个月就跳过了。如果必须执行,让任务检查自己上次成功的时间戳并补上;或者改成每晚跑一次,在脚本里判断「今天是 1 号吗」。

能改成 1 号 18:00 吗?
改小时字段:0 18 1 * * — 第 0 分、18 点、1 号。

别死记语法 — 用可视化生成器

在 Cron 编辑器里试用这条排程

完整速查表:Cron 速查表