Linux系統下刪除大量檔案的方法

2021-12-30 12:58:21 字數 562 閱讀 9342

刪除大量檔案的方法

要在linux下刪除海量檔案的情況,需要刪除數十萬個檔案。這個是之前的程式寫的日誌,增長很快,而且沒什麼用。這個時候,我們常用的刪除命令rm -fr * 就不好用了,因為要等待的時間太長。所以必須要採取一些非常手段。我們可以使用rsync的--delete-before引數來實現快速刪除大量檔案。

1)建立乙個空的資料夾:

mkdir /tmp/test

2)用rsync刪除目標目錄:

rsync --delete-before -a -h -v --progress --stats /tmp/test/ log/

這樣我們要刪除的log目錄就會被清空了,刪除的速度會非常快。rsync實際上用的是替換原理,處理數十萬個檔案也是秒刪。

選項說明:

--delete-before 接收者在傳輸之前進行刪除操作

--progress 在傳輸時顯示傳輸過程

--a 歸檔模式,表示以遞迴方式傳輸檔案,並保持所有檔案屬性

--h 保持硬連線的檔案

--v 詳細輸出模式

--stats 給出某些檔案的傳輸狀態

Linux下刪除大量檔案

主要參考了 首先建立50萬個檔案 test for i in seq 1500000 do echo text i.txt done test time rm f zsh sure you want to delete all the files in home hungerr test yn y ...

linux下快速刪除大量檔案

假如你要在linux下刪除大量檔案,比如100萬 1000萬,像 var spool clientmqueue 的mail郵件,像 usr local nginx proxy temp的nginx快取等,那麼rm rf 可能就不好使了。rsync提供了一些跟刪除相關的引數 rsync help gr...

linux下快速刪除大量檔案

假如你要在linux下刪除大量檔案,比如100萬 1000萬,像 var spool clientmqueue 的mail郵件,像 usr local nginx proxy temp的nginx快取等,那麼rm rf 可能就不好使了。rsync提供了一些跟刪除相關的引數 rsync help gr...