删除某个目录及子目录下某几种种类型的文件或者除某几种类型的文件命令

论坛 期权论坛 脚本     
匿名网站用户   2020-12-21 09:08   11   0

find /usr/tomcat/webapps/sec/common/extjs/ \( -name '*.zip' -or -name '*.backup' \) -type f -print -exec rm -rf {} \;

删除/usr/tomcat/webapps/sec/common/extjs/目录下 zip和backup的文件

find . -name "*.mp4" -type f -print -exec rm -rf {} \;

删除当前目录下 MP4的文件

. : 表示在当前目录下、-name "*.mp4" 表示查找所有后缀为txt的文件-print表示将查询结果打印到屏幕上-exec commandcommand为其他命令,-exec后可再接其他的命令来处理查找到的结果,上式中,{}表示”由find命令查找到的结果“,如上所示,find所查找到的结果放置到{}位置,-exec一直到”\;“是关键字,表示find额外命令的开始(-exec)到结束(\;),这中间的就是find命令的额外命令,上式中就是 rm -rf

$ find . -type f -not \(-name '*gz' -or -name '*odt' -or -name '*.jpg' \) -delete

下面的命令行将会删除掉当前目录下除了.gz.odt.jpg之外的所有文件:这个刚好相反。

或者使用管道和 xargs,你可以通过如下的方式修改上面的例子

$ find . -type f -not -name '*gz' -print0 | xargs -0  -I {} rm -v {}

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1136255
帖子:227251
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP