Cron表达式快速入门指南 - 5分钟创建您的第一个定时任务
5分钟学会创建cron表达式。可视化指南,包含常用定时任务预设模板。非常适合初学者。
准备好开始了吗?
立即试用 - 免费,无需注册
您需要什么
- ✓ 基本的命令行知识
- ✓ 可以访问Unix/Linux系统或使用我们的在线工具
- ✓ 理解时间间隔(分钟、小时、天)
30秒理解Cron
- → Cron是Unix/Linux系统中基于时间的任务调度器
- → 它使用简单的表达式格式:5个字段(分 时 日 月 周)
- → 示例:<code>0 2 * * *</code> = 每天凌晨2点执行
- → Cron任务会在指定时间/间隔自动运行
- → 非常适合备份、维护、报表和自动化任务
快速步骤
选择预设或自定义表达式
从预设的定时任务开始(如"每天午夜"),或通过为每个字段选择值来定制自己的表达式。
💡 提示: cron新手?先从预设开始了解模式,然后自定义。
配置5个字段
为分钟(0-59)、小时(0-23)、日期(1-31)、月份(1-12)和星期(0-6)设置值。使用 * 表示"每",使用具体数字表示特定时间。
0 2 * * * = 每天凌晨2点
0 */6 * * * = 每6小时
*/30 * * * * = 每30分钟
💡 提示: 使用 */N 表示"每N个单位" - 例如 */15 表示"每15分钟"
实时查看表达式更新
当您做出选择时,cron表达式会自动构建。更改字段值时,表达式会自动更新。
💡 提示: 点击表达式的任何部分查看它的作用
检查下次运行时间
准确查看cron任务下次何时执行。我们显示接下来10次运行时间,这样您可以验证时间表是否正确。
💡 提示: 注意时区 - 确保它与您的服务器时间匹配
复制并部署
满意后,点击"复制Cron"并将其粘贴到您的crontab文件、Kubernetes CronJob、AWS EventBridge或任何调度系统中。
💡 提示: 部署到生产环境前,先手动测试一次cron
常用预设
每小时
0 * * * * 每小时的整点运行
使用场景: 定期数据同步、健康检查
每天午夜
0 0 * * * 每天00:00(午夜)运行
使用场景: 每日备份、日志轮转、报表
每周一上午9点
0 9 * * 1 每周一上午9点运行
使用场景: 周报、维护任务
每6小时
0 */6 * * * 每6小时运行一次(00:00, 06:00, 12:00, 18:00)
使用场景: 多次每日同步、监控
每周日凌晨3点
0 3 * * 0 每周日凌晨3点运行
使用场景: 每周维护、清理
每月1号午夜
0 0 1 * * 每月1号00:00运行
使用场景: 月报、账单周期
集成到您的系统
Linux Crontab
# 编辑crontab
crontab -e
# 添加您的cron任务
0 2 * * * /path/to/your/script.sh
测试命令: crontab -l (列出所有cron任务)
Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
name: backup
spec:
schedule: "0 2 * * *"
jobTemplate:
spec:
template:
spec:
containers:
- name: backup
image: backup-image:latest
在Kubernetes集群中创建定时任务
AWS EventBridge
# EventBridge规则
Rate表达式: rate(24 hours)
# 或Cron表达式: cron(0 2 * * ? *)
AWS云中的无服务器调度
需要避免的常见错误
时区错误
✓ 解决方案: Cron默认使用UTC。将本地时间转换为UTC或在crontab中设置TZ=Asia/Shanghai。
语法错误
✓ 解决方案: 每个字段必须用空格分隔。使用 * 表示"每",用逗号分隔多个值。
没有输出/日志
✓ 解决方案: 始终重定向输出:0 2 * * * /script.sh > /var/log/cron.log 2>&1