本文于 122 天前发布,最后更新于 20 天前
一、配置任务
直接上命令
## 编辑任务 crontab -e ## 任务内容 0 0 * * * find /path/to/files -type f -mtime +180 -exec rm {} \;
命令注释
- 0 0 * * * 表示每天的午夜执行任务。可以根据需要调整时间,具体格式为:分钟 (0-59) 小时 (0-23) 天 (1-31) 月 (1-12) 星期 (0-7,0 和 7 表示周日)。
- find /path/to/files 是要搜索的目录路径,将 /path/to/files 替换为实际的目录路径。
- -type f 表示只搜索文件,而不包括目录。
- -mtime +180 表示搜索修改时间早于 180 天前的文件。
- -exec rm {} \; 是删除找到的文件。
另附,同时删除文件夹的命令
find /path/to/files -type d -mtime +180 -exec rm -rf {} \;
配置完成后可通过 crontab -l
命令查看当前的定时任务列表。
二、查看任务
## 查看任务列表 crontab -l ## 查看 crontab 执行情况 cat /var/log/cron | grep '关键字'
三、特殊的定时需求
每 90 分钟执行一次
配置思路:
计算需求时间与时间单位的最小公倍数,以 90 分钟执行一次为例
90 和 60 的最小公倍数是 180
180÷90=2(条)
180÷60=3(小时)
所以配置 90 分钟执行一次需要使用 2 条定时任务合并实现,每条定时任务的时间间隔是 3 小时,如下:
0 0-21/3 * * * script.sh 30 1-22/3 * * * script.sh
练习:定时任务每 72 分钟执行一次,可以在评论区写下答案。
另附
crontab 修改默认编辑器
编辑 /etc/profile,新增:
#crontab-editor export EDITOR="/usr/bin/nano" ;
注意:/usr/bin/nano 是编辑器运行文件,根据情况修改成自己的编辑器,例如:/usr/bin/vim