原文:
親測可用。有空看下和rm 的 區別
方法:要在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 給出某些檔案的傳輸狀態
linux 快速刪除大量 大檔案
1 快速刪除大量檔案 假如你要在linux下刪除大量檔案,比如100萬 1000萬,像 var spool clientmqueue 的mail郵件,usr local nginx proxy temp的nginx快取等,那麼rm rf 可能就不好使了。rsync 可以用來清空目錄或檔案,如下 1 ...
如何快速的刪除大量檔案
試驗場景 生成5000個1mb大小的檔案,然後用find刪除。看結果說話 user host test for x in seq 1000 do ddif dev zero of x.dd count 1 bs 1mb 2 dev null done user host test time find...
刪除目錄下大量小檔案和清空大檔案
其中 delete before 接收者在傳輸之前進行刪除操作 可以用來清空目錄或檔案,如下 1 先建立乙個空目錄 mkdir data blank 2 用rsync刪除目標目錄 rsync delete before d data blank var spool clientmqueue 這樣目標...