🔍 Crontab表达式解析器 | Linux Cron Expression Parser
输入Linux Crontab表达式,解析其含义和下次执行时间
🔧 Crontab表达式生成器 | Linux Cron Expression Generator
通过可视化界面生成Linux系统定时任务的Cron表达式
📚 常用示例 | Linux Crontab Examples
以下是常用的Linux Crontab表达式示例,点击即可快速加载到生成器中
每天中午12点执行
0 12 * * *
每5分钟执行一次
*/5 * * * *
每周一上午9点执行
0 9 * * 1
每月1号凌晨2点执行
0 2 1 * *
工作日上午10点执行
0 10 * * 1-5
周末上午10点执行
0 10 * * 0,6
每30分钟执行一次
*/30 * * * *
每小时执行一次
0 * * * *
每天凌晨执行
0 0 * * *
每周日凌晨执行
0 0 * * 0
晚上11点到早上7点之间,每隔一小时执行
0 23-7 * * *
每天18:00至23:00之间每隔30分钟执行
0,30 18-23 * * *
💻 Crontab命令使用 | Crontab Commands
Linux系统中Crontab命令的常用操作和管理方法
🔧 常用命令
$ crontab -e # 编辑当前用户的crontab
$ crontab -l # 列出当前用户的crontab
$ crontab -r # 删除当前用户的crontab
$ crontab -u user -e # 编辑指定用户的crontab
$ crontab -u user -l # 列出指定用户的crontab
$ crontab -l # 列出当前用户的crontab
$ crontab -r # 删除当前用户的crontab
$ crontab -u user -e # 编辑指定用户的crontab
$ crontab -u user -l # 列出指定用户的crontab
📁 相关文件和目录
/var/spool/cron/ # 用户crontab文件存放目录
/etc/crontab # 系统级crontab配置文件
/etc/cron.d/ # 系统级cron任务目录
/etc/cron.hourly/ # 每小时执行的脚本目录
/etc/cron.daily/ # 每天执行的脚本目录
/etc/cron.weekly/ # 每周执行的脚本目录
/etc/cron.monthly/ # 每月执行的脚本目录
/var/log/cron # cron日志文件
/etc/crontab # 系统级crontab配置文件
/etc/cron.d/ # 系统级cron任务目录
/etc/cron.hourly/ # 每小时执行的脚本目录
/etc/cron.daily/ # 每天执行的脚本目录
/etc/cron.weekly/ # 每周执行的脚本目录
/etc/cron.monthly/ # 每月执行的脚本目录
/var/log/cron # cron日志文件
⚙️ 服务管理
$ systemctl status cron # 查看cron服务状态
$ systemctl start cron # 启动cron服务
$ systemctl stop cron # 停止cron服务
$ systemctl restart cron # 重启cron服务
$ systemctl enable cron # 设置开机自启
$ systemctl start cron # 启动cron服务
$ systemctl stop cron # 停止cron服务
$ systemctl restart cron # 重启cron服务
$ systemctl enable cron # 设置开机自启
📝 示例任务
# 每天凌晨2点备份数据库
0 2 * * * /usr/local/bin/backup_db.sh
# 每5分钟检查系统负载
*/5 * * * * /usr/local/bin/check_load.sh
# 每周日凌晨清理日志文件
0 0 * * 0 /usr/local/bin/cleanup_logs.sh
# 每月1号生成报告
0 0 1 * * /usr/local/bin/generate_report.sh
0 2 * * * /usr/local/bin/backup_db.sh
# 每5分钟检查系统负载
*/5 * * * * /usr/local/bin/check_load.sh
# 每周日凌晨清理日志文件
0 0 * * 0 /usr/local/bin/cleanup_logs.sh
# 每月1号生成报告
0 0 1 * * /usr/local/bin/generate_report.sh
📖 Linux Crontab语法说明 | Crontab Syntax Guide
Linux Crontab表达式由5个字段组成,每个字段用空格分隔
🔢 字段格式
分钟(0-59) 小时(0-23) 日(1-31) 月(1-12) 星期(0-7)
* * * * *
| | | | |
| | | | +-- 星期几 (0-7, 0和7都表示周日)
| | | +---------- 月份 (1-12)
| | +------------------ 日期 (1-31)
| +--------------------------- 小时 (0-23)
+-------------------------------------- 分钟 (0-59)
* * * * *
| | | | |
| | | | +-- 星期几 (0-7, 0和7都表示周日)
| | | +---------- 月份 (1-12)
| | +------------------ 日期 (1-31)
| +--------------------------- 小时 (0-23)
+-------------------------------------- 分钟 (0-59)
🎯 特殊字符
字符 | 含义 | 示例 | 说明 |
---|---|---|---|
* |
匹配任何值 | * * * * * |
每分钟执行 |
, |
分隔多个值 | 0,30 * * * * |
每小时的0分和30分执行 |
- |
指定范围 | 0 9-17 * * * |
每天9点到17点的整点执行 |
/ |
指定间隔 | */5 * * * * |
每5分钟执行一次 |
⚠️ 注意事项
- Linux Crontab不支持秒级精度,最小单位是分钟
- 星期字段中,0和7都表示周日
- 月份和星期可以使用英文缩写:Jan-Dec, Sun-Sat
- 命令路径建议使用绝对路径
- 输出重定向:
command > /dev/null 2>&1
可以禁止邮件通知 - 环境变量可能与交互式shell不同,需要在脚本中设置