#find /tmp -mtime +30 -type f -name *.sh[ab] -exec rm -f {} \;

假如在一个目录中保留最近30天的文件,30天前的文件自动删除

#find /tmp -mtime +30 -type f -name *.sh[ab] -exec rm -f {} \;

/tmp –设置查找的目录;

-mtime +30 –设置时间为30天前;

-type f –设置查找的类型为文件;

-name *.sh[ab] –设置文件名称中包含sha或者shb;

-exec rm -f –查找完毕后执行删除操作;

提示:将此命令写入crontab后即可自动完成查找并删除的工作

另外的方法大同小异

#find . -mtime +30 -type f | xargs rm -rf

$find . -type f -cmin +10 -exec rm -rf *.xml {} \;

find . type f -name “debug*” -atime +3 -exec rm -f {} \;

首先cd进入目录:

find . -name “*~” -exec rm {} \;

find . -ctime +n -exec -exec rm -vi {} \;

这里的+n是指多少天以前,比如:+7

find . -ctime +7 -exec -exec rm -vi {} \;

如果不想手动确认,把命令中的-vi改成-fv

 

使用find时要区分清楚atime,ctime,mtime的区别,一般都使用mtime来查找,因为在ls -al显示出来的就是mtime时间戳,可以使用: # find $PAHT -mtime +3 -ok rm {} \; 在交互模式下删除比较保险。