Crontab 表达式生成器
生成并验证 cron 表达式,即时显示人类可读的解释。可视化调度计划,预览下次执行时间,导出为 crontab 格式。Linux/Unix 系统管理员的理想工具。
什么是 crontab 文件?
crontab 文件是类 Unix 操作系统中 cron 守护进程使用的配置文件,用于安排命令或脚本在指定时间间隔自动运行。每个用户可以有自己的 crontab 文件。
cron 表达式有多少个字段?
标准 cron 表达式有 5 个字段:分钟(0-59)、小时(0-23)、月份中的日(1-31)、月份(1-12)和星期几(0-7,其中 0 和 7 是周日)。某些系统支持可选的第 6 个字段表示年份。
cron 中的星号(*)是什么意思?
星号(*)是通配符,表示该字段的"每个"或"所有可能值"。例如,分钟字段中的 * 表示命令每分钟运行一次。
如何在 cron 中指定多个值?
您可以使用逗号指定多个值(例如 1,3,5 表示周一、周三、周五),使用连字符指定范围(例如 1-5 表示周一到周五),或使用斜杠指定步长值(例如 */2 表示每 2 个单位)。
月份中的日和星期几有什么区别?
月份中的日(字段 3)指定日期(1-31),而星期几(字段 5)指定星期几(0-7)。如果两者都受限,当任一匹配时命令就会运行。
如何每 5 分钟运行一次 cron 作业?
使用表达式 */5 * * * *,表示"每 5 分钟"。分钟字段中的 */5 创建一个步长模式,在每小时的 0、5、10、15、20、25、30、35、40、45、50 和 55 分钟触发。
能否安排作业在特定时间运行,如上午 9 点和下午 5 点?
可以,使用逗号分隔的值:0 9,17 * * * 将在每天上午 9:00 和下午 5:00 运行。您也可以使用范围如 0 9-17 * * * 表示从上午 9 点到下午 5 点每小时执行。
什么是 @daily 或 @hourly 等特殊 cron 字符串?
特殊字符串是快捷方式:@yearly 或 @annually(每年一次)、@monthly(每月一次)、@weekly(每周一次)、@daily 或 @midnight(每天一次)、@hourly(每小时一次)和 @reboot(系统启动时)。
如何编辑我的 crontab 文件?
使用命令 "crontab -e" 编辑 crontab 文件。使用 "crontab -l" 列出当前 cron 作业,使用 "crontab -r" 删除所有 cron 作业。编辑前务必备份。
cron 日志存储在哪里?
cron 日志通常存储在 /var/log/cron、/var/log/messages 或 /var/log/syslog 中,具体取决于您的 Linux 发行版。您也可以在 crontab 条目中将 cron 输出重定向到自定义日志文件。
为什么我的 cron 作业没有运行?
常见问题包括:语法错误、文件权限错误、命令不在 PATH 中、环境变量未设置或 cron 守护进程未运行。检查日志中的错误消息并使用此工具验证您的表达式。
能否在 crontab 中使用环境变量?
可以,您可以在 crontab 文件顶部定义环境变量(例如 SHELL=/bin/bash、PATH=/usr/bin:/bin)。这些变量适用于该文件中的所有 cron 作业。
什么是 6 字段 cron 语法?
6 字段语法在开头添加了秒字段:秒 分钟 小时 日 月 星期。某些 cron 实现(如 Quartz Scheduler)支持此语法,但标准 Unix cron 不支持。
如何备份我的 crontab?
运行 "crontab -l > mycrontab.backup" 将 crontab 保存到文件。要恢复,使用 "crontab mycrontab.backup"。在更改前备份是良好习惯。