轉載于:http://www.ha97.com/4107.html
昨天遇到了要在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 給出某些檔案的傳輸狀态