Crontab 定时任务语法速查与十个常用示例
WebTool 团队 · 发布于 2026-08-15 · Linux / Crontab / 运维
Crontab 五段格式为「分 时 日 月 周」,用 * / , - 四个符号组合出任意周期。 写完表达式可以用本站 Crontab 解析工具翻译成中文确认。
格式
┌ 分钟 (0-59)
│ ┌ 小时 (0-23)
│ │ ┌ 日期 (1-31)
│ │ │ ┌ 月份 (1-12)
│ │ │ │ ┌ 星期 (0-7,0 和 7 都是周日)
* * * * * 命令
四个符号:* 任意值、*/n 每隔 n、a-b 范围、a,b 枚举。
十个常用表达式
| 需求 | 表达式 |
|---|---|
| 每分钟 | * * * * * |
| 每 5 分钟 | */5 * * * * |
| 每小时整点 | 0 * * * * |
| 每天凌晨 2 点 | 0 2 * * * |
| 工作日早 9 点 | 0 9 * * 1-5 |
| 每周一凌晨 3 点 | 0 3 * * 1 |
| 每月 1 号零点 | 0 0 1 * * |
| 每 10 分钟且仅工作时间 | */10 9-18 * * * |
| 每小时的 0 分和 30 分 | 0,30 * * * * |
| 每年元旦零点 | 0 0 1 1 * |
三个容易踩的坑
- 日期段与星期段是"或"关系:
0 0 1 * 1不是"每月 1 号且周一",而是"每月 1 号或每周一"都会执行。 - 环境变量极简:cron 环境的 PATH 与交互 shell 不同,脚本里命令尽量写绝对路径。
- % 是特殊字符:命令中的 % 会被当作换行,如
date +\%Y\%m\%d需要转义。
最后更新:2026-08-15