#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 {} \; 在交互模式下删除比较保险。