1. 创建一个 deletelog.sh 文件,代码如下
#!/bin/bash
find /root/test/ -mtime +30 -name "*.log" | xargs -i mv {} /root/RecycleBin/;
find /root/RecycleBin/ -name "*.log" -exec rm -rf {} \;
解读如下代码:
find /root/test/ -mtime +30 -name "*.log" | xargs -i mv {} /root/RecycleBin/;
find 查找
/root/test/ 指定目录
-mtime +30 30天前的(天数可自定义)
-name "*.log" 所有.log结尾的文件
| xargs -i mv {} 固定写法
/root/RecycleBin/ 目标目录
整句命令的意思:查找/root/test/目录下30天前的所有已.log结尾的文件,然后剪切到/root/RecycleBin/目录下
解读如下代码:
find /root/RecycleBin/ -name "*.log" -exec rm -rf {} \;
find 查找
/root/RecycleBin/ 指定目录
-name "*.log" 所有.log结尾的文件
-exec rm -rf {} \ 固定写法
整句命令的意思:查找/root/RecycleBin/目录下所有已.log结尾的文件,然后全部删除掉
2. 为 deletelog.sh 添加执行权限
chmod 777 /root/RecycleBin/deletelog.sh
3. 添加定时执行 deletelog.sh 脚本的任务
crontab -e 进入定时任务的编辑界面
添加定时任务(每天凌晨2点执行):
0 2 * * * /root/RecycleBin/deletelog.sh
crontab -l 查看执行计划
以上就是全部的内容了,可以自行再去了解一下这些参数的其他设置。