find ./ -mtime +5 |xargs rm -rf
语句写法:
find 对应目录 -mtime +天数 -name “文件名” -exec rm -rf {} ;
例1:
find /usr/local/backups -mtime +10 -name “.” -exec rm -rf {} ;
将/usr/local/backups目录下所有10天前带"."的文件删除
find:Linux的查找命令,用户查找指定条件的文件
/usr/local/backups:想要进行清理的任意目录
-mtime:标准语句写法
+10: 查找10天前的文件,这里用数字代表天数,+30表示查找30天前的文件
"*.*":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三
-exec:固定写法
rm -rf:强制删除文件,包括目录
{} \; :固定写法,一对大括号+空格+\+;
自动删除7天前的文件
下面的脚本是删除/home目录下7天前的文件
#!/bin/bash
find /home/ -type f -mtime +7 -exec rm -f {} \;
# 把这个脚本保存在/tmp目录下,命名为:clearfile.sh
加入定时任务
# 编辑定时任务命令:crontab -e
10 22 * * * /bin/sh /tmp/clearfile.sh
# 这个表示为,每天22点10分执行这个脚本。
# 查看定时任务命令:crontab -l
实操如下:
#!/bin/bash
find /data/br/jar -mtime +12 -name "ONEALERT_MANAGER.jar_*" -exec rm -rf {} \;
# 定时任务 命令:crontab -e
# 每天1点执行定时删除ONEALERT的程序包的脚本
* 1 * * * /bin/sh /data/br/bin/del_7DManager.sh
* 1 * * * /bin/sh /data/br/bin/del_7DWEB.sh
参考链接:https://blog.csdn.net/zhuchunyan_aijia/article/details/83089222
参考链接:https://blog.csdn.net/bandaoyu/article/details/119998253