linux下的 定时删除文件

发布于 2019-10-17  320 次阅读


#!/bin/bash
#删除30天之前的文件(扩展名为*.log)
find /var/log/nginx/ -mtime +30 -type f -name \*.log | xargs rm -f
#删除带有固定标识(文件中还有log的任何文件)文件
find /var/log/nginx/ -mtime +30 -name "*log*" -exec rm -f {} \;

说明:
将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:
find:linux的查找命令,用户查找指定条件的文件;
/opt/soft/log/:想要进行清理的任意目录;
-mtime:标准语句写法;
+30:查找30天前的文件,这里用数字代表天数;
".log":希望查找的数据类型,".jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三;
-exec:固定写法;
rm -rf:强制删除文件,包括目录;
{} ; :固定写法,一对大括号+空格++;


一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。