当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux系统下快速删除某个目录下大量文件

Unix/Linux
曾经回答的几个问题
Linux C 函数参考(环境变量,终端控制)
Linux C 函数参考(文件权限控制)
Linux C 函数参考(数据结构及算法)
理解流媒体开发
基于S3c4510b芯片的系统中的地址重映射的实现
Lotus.Domino&Notes.v6.5(17CD)
各种MPEG资源地汇总
2005第一号公告
庆祝鲜花和蛋糕
红旗5与你相约7月
终端命令用法精选
心情不好
硬盘的 Linux 分区
什么是存储过程
存储过程的一点相关资料
shell 阅读笔记-基本命令
shell 阅读笔记--控制流结构
Ifconfig网络配置工具详解
shell 阅读笔记-脚本

Unix/Linux 中的 Linux系统下快速删除某个目录下大量文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 95 ::
收藏到网摘: n/a

不管是哪个操作系统,同一级目录存在太多的文件都是一件可怕的事情,不管是读取还是删除的时候。

 

一旦这种不幸的事情发生在你身上,而又不能完全把整个目录删掉怎么办呢?

 

你可以用 rm -f *.log 但是你马上就会收到一个出错信息:参数列表太长

 

一个小时以前我一直还是缩小通用匹配符的范围,例如我依次的执行

 

rm -f a*.log

rm -f b*.log

......

 

非常费劲,如果这样还不行可以还要继续细化通配符,这样要删除所有log文件可能需要一整天时间。

 

废话那么多,其实只需要一个命令就可以搞定

 

ls *.log | xargs rm -f

 

刚把一个包含几万个文件的目录干掉(/var/log/samba),试试看。

 

注:用rm -fr (路径+要删文件)也可以。