正在加载...

昨天遇到了要在Linux下删除海量文件的情况,需要删除数十万个文件。这个是之前的程序写的日志,增长很快,而且没什么用。这个时候,我们常用的删除命令rm -fr * 就不好用了,因为要等待的时间太长。所以必须要采取一些非常手段。我们可以使用rsync来实现快速删除大量文件。

1、先安装rsync:
yum install rsync
2、建立一个空的文件夹:
mkdir /tmp/test
3、用rsync删除目标目录:
rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/
这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsync实际上用的是替换原理,处理数十万个文件也是秒删。

选项说明
–delete-before 接收者在传输之前进行删除操作
–progress 在传输时显示传输过程
-a 归档模式,表示以递归方式传输文件,并保持所有文件属性
-H 保持硬连接的文件
-v 详细输出模式
–stats 给出某些文件的传输状态

: http://www.ha97.com/4107.html

本文相关评论 - 才 12 条评论
2011-06-18 08:54:37
Firefox 4.0.1 Firefox 4.0.1 Windows 7 x64 Edition Windows 7 x64 Edition

不错,学习了!!

2011-07-03 12:18:54
Google Chrome 12.0.742.112 Google Chrome 12.0.742.112 Windows 7 Windows 7

呵呵,我也是需要删除20G的零散日志文件才发现这个方法才最快。之前程序员写的程序很烂,留下个烂摊子~~

ccc
2011-06-18 10:03:05
Internet Explorer 9.0 Internet Explorer 9.0 Windows 7 x64 Edition Windows 7 x64 Edition

看来rm 命令还是 一如既往的垃圾~~

2011-07-03 12:19:25
Google Chrome 12.0.742.112 Google Chrome 12.0.742.112 Windows 7 Windows 7

不能这么说的~~

testtes
2012-11-13 14:32:22
Safari 6.0.2 Safari 6.0.2 Mac OS X  10.8.2 Mac OS X 10.8.2

这个方法NB

2012-11-14 14:50:21
Google Chrome 23.0.1271.64 Google Chrome 23.0.1271.64 GNU/Linux GNU/Linux

原理是什么?

sheldWu
2013-01-05 13:50:26
Google Chrome 14.0.835.15 Google Chrome 14.0.835.15 Windows XP Windows XP

rm跟rsync替换为啥差了这么多

小笨蛋呀
2013-03-11 22:05:15
Google Chrome 26.0.1410.12 Google Chrome 26.0.1410.12 Windows 8 x64 Edition Windows 8 x64 Edition

经测试,rm与rsync在删除单个大文件(4G左右)的速度差不多,没有快到哪里去,请楼主发出详细的测试报告再发帖吧,不要误导大家。

2013-04-23 23:07:09
Google Chrome 23.0.1271.97 Google Chrome 23.0.1271.97 Windows 8 Windows 8

同意“小笨蛋呀”
几十万个小文件,你测试下就知道了。
速度根本不会比rm快。
博主自己没测试过吧.

aaa
2013-05-15 11:39:12
Internet Explorer 10.0 Internet Explorer 10.0 Windows 8 x64 Edition Windows 8 x64 Edition

替换是什么意思呢

magicyang87
2013-05-15 11:47:20
Google Chrome 26.0.1410.64 Google Chrome 26.0.1410.64 Windows 7 x64 Edition Windows 7 x64 Edition

删除大量文件效果非常明显 单个确实是没用了

UClinux
2013-08-28 21:48:40
Internet Explorer 8.0 Internet Explorer 8.0 Windows Server 2003 Windows Server 2003

经测试,rm与rsync在删除单个大文件(4G左右)的速度差不多,没有快到哪里去,请楼主发出详细的测试报告再发帖吧,不要误导大家。
—–
这个方法是用于删除非常多的小文件速度快,不是拿来比单文件。