什么是 Crontab
Crontab 是 Linux 系统中,设置定时任务执行的工具,它可以让系统在指定时间自动执行某命令或脚本。
比如,如下场景可以首选 Crontab 进行设置:
- 每天夜间自动备份数据库
- 每周清理日志文件
- 每隔几分钟检查服务运行状态
Crontab 的安装
- 检查是否安装(一般系统已自带),若未安装,执行以下命令进行安装:
CentOS:
yum install -y crontabs
Ubuntu/Debian:
apt-get install cron
基本使用方法
命令 | 作用 |
crontab -e | 编辑定时任务 |
crontab -l | 查看当前已有任务列表 |
crontab -r | 删除所有任务 |
提示:首次用 crontab -e 编辑任务时需要选择编辑器(推荐选vim)。
设置时间格式
任务格式:
* * * * * 要执行的命令
其中,五个 * 分别代表:
- 分钟(0-59)
- 小时(0-23)
- 日(1-31)
- 月(1-12)
- 周几(0-7,0和7是周日)
示例:
每天凌晨2点执行:
0 2 * * * /backup.sh
每周一8:30执行:
30 8 * * 1 /clean_logs.sh
每10分钟执行一次:
*/10 * * * * /check_service.sh
添加任务的步骤示例
- 创建脚本(例如备份文件夹):
vim /root/backup.sh
chmod +x /root/backup.sh
在 backup.sh 写入备份的脚本
- 设置定时任务:
crontab -e
添加任务
0 19 * * * /bin/bash /root/backup.sh
- 保存后等待执行,确认任务已添加
crontab -l
小技巧:用网站 Crontab.guru - The cron schedule expression generator 可验证时间格式是否正确!