# Cron 表达式生成器

> 免费 client-side cron builder。可生成 Unix、Quartz、AWS EventBridge 和 GitHub Actions 的 cron 表达式，并预览未来执行时间。

- **Category:** 开发者
- **URL:** https://www.teafun.cyou/tools/cron-builder/
- **Privacy:** Runs entirely in your browser — no uploads, no account, no tracking.
- **Also known as:** cron expression, crontab, schedule builder, cron job, cron generator, scheduled task
- **Related tools:** [结构化数据转换器](https://www.teafun.cyou/tools/yaml-json-toml/), [ENV / Shell / Docker 转换器](https://www.teafun.cyou/tools/env-converter/), [JSON 格式化 / 验证器](https://www.teafun.cyou/tools/json-formatter/)
- **Tags:** Planning, Productivity

## About

用可视化方式建立 Unix、Quartz、AWS EventBridge 和 GitHub Actions 的 cron 表达式，并即时预览未来执行时间。

## 如何使用 Cron 调度表达式构建器

选择目标方言（Unix crontab、Quartz、AWS EventBridge、GitHub Actions）。构建器显示五个（或六个/七个）字段，带有 `Every` 或 `Specific` 切换。切换「每分钟/小时/日」使用 `*` 语义或选择字面量值。使用步进输入输入 `*/N`（例如每 15 分钟 = `*/15 * * * *`）。月中日与星期几在某些方言中互斥——在 Unix cron 中选择两者是 OR，但在 Quartz/EventBridge 中无效（一个必须是 `?`）。实时预览显示浏览器时区计算的后续 5 次计划运行。复制表达式粘贴到 crontab、`.github/workflows/*.yml`、EventBridge 规则或 Quartz JobDetail。表达式也可链接——URL 哈希捕获完整配置。

## 为什么正确的 Cron 调度很重要

`0 */6 * * *` 不表示每 6 小时。小时字段中的 `*/6` 表示每小时数能被 6 整除的小时——那是 00、06、12、18，正好每个日历日 4 次运行。在 03:00 重启不会改变计划；下次运行是 06:00。要真正每 6 小时从现在开始运行，使用有状态调度器（Quartz cron 触发器、带 `OnUnitActiveSec=6h` 的 systemd 计时器，或你的 CI 自有间隔语法）——cron 本身纯粹基于日历且无状态。另一个经典坑是 2 月 30 日——`30 14 30 * *` 仅在有第 30 天的月份运行，无声地跳过 2 月（一年 11 次而非 12 次）。在发布前预计算后 5-10 次运行的工具可以捕获两个坑。AWS 建议 EventBridge 的 `rate(6 hours)` 等费率表达式用于有状态间隔调度，而非 cron。

_SEO title: Cron Expression Builder – Unix、Quartz、AWS、GitHub | TeaFun_

## FAQ

### 支持哪些格式？

此 builder 可输出 Unix 5-field cron，也可生成同一排程的 Quartz、AWS EventBridge 及 GitHub Actions 版本。

### 预览时间是本地计算的吗？

是。TeaFun 会根据你选择的设置，直接在浏览器中计算未来执行时间。

### 可以直接用在 GitHub Actions 吗？

可以。把格式切换为 GitHub Actions，然后复制生成的表达式到 workflow schedule 即可。
