AI-TOL
⚡ Quick Start 🕐 5分钟 📊 初学者

Cron表达式快速入门指南 - 5分钟创建您的第一个定时任务

5分钟学会创建cron表达式。可视化指南,包含常用定时任务预设模板。非常适合初学者。

准备好开始了吗?

立即试用 - 免费,无需注册

打开 Cron表达式生成器 →

您需要什么

  • 基本的命令行知识
  • 可以访问Unix/Linux系统或使用我们的在线工具
  • 理解时间间隔(分钟、小时、天)

30秒理解Cron

  • Cron是Unix/Linux系统中基于时间的任务调度器
  • 它使用简单的表达式格式:5个字段(分 时 日 月 周)
  • 示例:<code>0 2 * * *</code> = 每天凌晨2点执行
  • Cron任务会在指定时间/间隔自动运行
  • 非常适合备份、维护、报表和自动化任务

快速步骤

1

选择预设或自定义表达式

从预设的定时任务开始(如"每天午夜"),或通过为每个字段选择值来定制自己的表达式。

💡 提示: cron新手?先从预设开始了解模式,然后自定义。

2

配置5个字段

为分钟(0-59)、小时(0-23)、日期(1-31)、月份(1-12)和星期(0-6)设置值。使用 * 表示"每",使用具体数字表示特定时间。


                        0 2 * * *  = 每天凌晨2点
0 */6 * * * = 每6小时
*/30 * * * * = 每30分钟
                      

💡 提示: 使用 */N 表示"每N个单位" - 例如 */15 表示"每15分钟"

3

实时查看表达式更新

当您做出选择时,cron表达式会自动构建。更改字段值时,表达式会自动更新。

💡 提示: 点击表达式的任何部分查看它的作用

4

检查下次运行时间

准确查看cron任务下次何时执行。我们显示接下来10次运行时间,这样您可以验证时间表是否正确。

💡 提示: 注意时区 - 确保它与您的服务器时间匹配

5

复制并部署

满意后,点击"复制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

常见问题

* 和 */n 有什么区别?
* 表示"每"(例如每小时),而 */n 表示"每n个单位"(例如 */15 表示每15分钟)。两者类似,但 */n 对间隔的表达更明确。
如何每5分钟运行一次cron任务?
使用表达式:*/5 * * * *。这会在每小时的0、5、10、15等分钟运行任务。
cron使用什么时区?
默认情况下,cron使用UTC时区。您可以在crontab文件中的cron任务行之前添加CRON_TZ=Asia/Shanghai(或您的时区)来指定不同的时区。
如何知道我的cron任务是否在运行?
检查cron日志:grep CRON /var/log/syslog (Linux) 或 /var/log/cron (某些系统)。您也可以将输出重定向到日志文件:* * * * * command > /path/to/logfile.log 2>&1
可以不等待就测试cron表达式吗?
可以!使用我们的Cron表达式生成器立即查看下次运行时间。您也可以手动运行脚本一次来测试:bash /path/to/your/script.sh

Related Resources

开始使用 Cron表达式生成器 现在

免费,无需注册,100% 隐私保护

试用 Cron表达式生成器 →