Ubuntu Minimal如何使用Crontab定时任务
导读:Ubuntu Minimal 使用 Crontab 定时任务 一 安装与启动 Cron 更新索引并安装:sudo apt update && sudo apt install -y cron 启动服务:sudo syste...
Ubuntu Minimal 使用 Crontab 定时任务
一 安装与启动 Cron
- 更新索引并安装:sudo apt update & & sudo apt install -y cron
- 启动服务:sudo systemctl start cron
- 设置开机自启:sudo systemctl enable cron
- 检查状态:sudo systemctl status cron(看到 active 即正常)
二 基本用法与常用命令
- 编辑当前用户的定时任务:crontab -e
- 列出当前用户的任务:crontab -l
- 删除当前用户的任务表:crontab -r(谨慎,删除后不可恢复)
- 编辑其他用户的任务(需 sudo):sudo crontab -e -u username
- 系统级任务:编辑 /etc/crontab 或将脚本放入 /etc/cron.d/(遵循该文件内的用户字段规范)
三 时间格式与常用表达式
- 时间字段顺序:分 时 日 月 周(共 5 个时间字段 + 命令)
- 取值范围:分钟 0–59,小时 0–23,日 1–31,月 1–12,周 0–7(0 和 7 均为周日)
- 特殊符号:
- * 任意值;, 枚举;- 范围;/ 步长(如 */5 表示每隔 5 个单位)
- 常用示例:
- 每分钟:* * * * * command
- 每天 02:00:0 2 * * * command
- 每周一 03:00:0 3 * * 1 command
- 每月 1 号 04:00:0 4 1 * * command
- 每 5 分钟:*/5 * * * * command
四 实战示例
- 创建脚本并赋权
- mkdir -p ~/scripts
- nano ~/scripts/test.sh
- 内容:
- #!/bin/bash
- echo “$(date) - Hello from cron!” > > ~/cron-test.log
- 赋权:chmod +x ~/scripts/test.sh
- 添加定时任务
- crontab -e
- 增加:* * * * * /home/你的用户名/scripts/test.sh
- 验证
- 等待 1–2 分钟,查看日志:cat ~/cron-test.log(出现时间戳与提示即成功)
五 日志与排错要点
- 启用并查看日志
- 编辑日志配置:sudo nano /etc/rsyslog.d/50-default.conf
- 取消注释:cron.* /var/log/cron.log
- 重启日志服务:sudo systemctl restart rsyslog
- 查看日志:less /var/log/cron.log 或 tail -f /var/log/cron.log
- 常见排错
- 使用命令与脚本的绝对路径(cron 环境与交互式 shell 不同)
- 脚本首行声明 #!/bin/bash
- 处理输出与错误:将标准输出与错误重定向,例如:
- * * * * * /path/script.sh > /dev/null 2> & 1
- 或记录日志:* * * * * /path/script.sh > > /var/log/myscript.log 2> & 1
- 若任务涉及环境变量(如 PATH、HOME),在 crontab 中显式设置或在脚本内设置
- 修改系统级 /etc/crontab 或 /etc/cron.d/ 后,通常无需重启 cron;如异常可使用 sudo systemctl restart cron 尝试恢复
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Minimal如何使用Crontab定时任务
本文地址: https://pptw.com/jishu/751340.html
