轉自 : http://www.ha97.com/4107.htmlhtml
昨天遇到了要在Linux下刪除海量文件的狀況,須要刪除數十萬個文件。這個是以前的程序寫的日誌,增加很快,並且沒什麼用。這個時候,咱們經常使用的刪除命令rm -fr * 就很差用了,由於要等待的時間太長。因此必需要採起一些很是手段。咱們可使用rsync來實現快速刪除大量文件。linux
一、先安裝rsync:yum install rsync
二、創建一個空的文件夾:mkdir /tmp/test
三、用rsync刪除目標目錄:rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/
這樣咱們要刪除的log目錄就會被清空了,刪除的速度會很是快。rsync實際上用的是替換原理,處理數十萬個文件也是秒刪。post
選項說明:
–delete-before 接收者在傳輸以前進行刪除操做
–progress 在傳輸時顯示傳輸過程
-a 歸檔模式,表示以遞歸方式傳輸文件,並保持全部文件屬性
-H 保持硬鏈接的文件
-v 詳細輸出模式
–stats 給出某些文件的傳輸狀態日誌