首页 > 代码库 > linux下如何删除一百万个文件
linux下如何删除一百万个文件
今日QA发了个请求,要求删除某目录下指定格式的文件。
[root@xx resin-3.1.9]# ls | wc -l
1013964
统计了下,有一百万多个文件!
而且文件的命名也很古怪,如“d:\temp\perf\1413787853558.html”...
直接用rm -f *.html,不支持!
-bash: /bin/rm: Argument list too long
尝试用xargs,ls也不支持这么多的参数。
#ls *.html | xargs rm
-bash: /bin/ls: Argument list too long
再换个办法:
ls | grep "d:" | grep temp | grep perf | grep html | xargs rm -f
因为有\字符在文件名称中,无果。
小批量实验了几次,终于想到办法。
先把这些文件名称全部导入到一个文件中
ls | grep "temp" | grep "perf" | grep "d:" | grep "html" >xxx.remove
接着,跑一个for 循环,即可删除。
# for i in `cat xxx.remove`;do rm -f $i;done
linux下如何删除一百万个文件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。