您的位置:首页 > 运维架构 > Linux

在Linux中同时删除一百万个小文件的最快方法

2013-07-03 15:22 357 查看
最近,看到一个比较有意思的话题:在Linux下面如何最快的删除一个目录下的百万级的小文件?通常情况下,在Linux中删除文件首先会选择rm命令,但是处理数量巨大的文件的时候,其删除性能并不是非常好。
在http://www.quora.com/How-can-someone-rapidly-delete-400-000-files 中,Zhenyu Lee提出了一个非常好的方案,就是使用rsync -a -delete命令进行删除,其原理是将一个空目录同步到该目录,从而达到删除的目的。并且其速度非常快,比rm命令要高出不少。
文中解释了使用rm命令会比较慢的原因:这是因为使用rm命令删除海量文件的时候,会首先创建一个文件列表,这会耗掉很多时间。 If you have millions of files, using rmwill build file list first, which take a lot of time.[英文原文:A faster way to delete millions of files in a directory ]

本文出自 “烟花易冷” 博客,请务必保留此出处http://yuanhuan.blog.51cto.com/3367116/1240783
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: