快速刪除大量小檔案

2022-09-05 00:36:16 字數 687 閱讀 4462

由於bash會展開例如 rm aa/* 這樣的命令 如果後面的檔案太多就會報引數太長, 所以有時候刪除大量小檔案就不適合用rm了

可以使用find先查詢在刪除 就不會出現上面那種報錯問題, 可是還有乙個問題檔案太多的話 -exec rm {} ; 完全沒有效率, 一兩個小時估計也就只能刪除幾十萬的檔案

對於需要刪除百萬為單位的檔案數來說 這就等於蝸牛爬

搜尋後發現 可以使用另乙個find的引數 -delete 網上有人開玩笑說這個比-exec 快1000倍

雖然這個有些誇張了 但是快10-100倍還是有的 刪除200w的檔案 大概需要40幾分鐘

網上還有乙個方案, (個人覺得不太適合)

建立乙個空目錄, 利用rsync同步這個空目錄到需要刪除的目錄, 這樣就可以刪除掉目錄下的檔案, 感覺這樣的操作和直接rm -rf /path 效果差不多

只是後者把目錄刪了, 前者是否會改變檔案儲存的inode號待測試.

這裡的需求主要是只刪除資料夾內部分檔案, 而不是清空資料夾/刪除資料夾

推薦的命令 find /path/to/delete -type f -name "test-log*" -mtime +10 -delete

先推薦一本書:<這本書內容不多 幾個小時就可以看完, 裡面介紹的有些內容現在已經處理過了, 還是可以推薦看下

另外一本 大教堂與小集市 也可以推薦看下

linux快速刪除大量小檔案

在linux下面刪除大量資料夾的情況,如 需要刪除100萬個檔案或者資料夾。這個時候,我們本來的刪除命令rm rf 就不好使了,因為要等待的太久。所以必須要採取一些非常手段。我們可以使用rsync來實現快速 刪除大量檔案。方法如下 1.安裝rsync yum y install rsync 2.建立...

linux快速刪除大量小檔案

linux 快速刪除大量小檔案方法 當我們在linux系統中要刪除數萬或者數十萬甚至數百萬的檔案時使用rm rf 就不太好用,因為要等待很長一段時間。在這種情況之下我們可以使用linux系統命令rsync來巧妙的處理。rsync實際上用的是替換原理,處理數十萬個檔案也是秒刪。1.rsync安裝,有些...

Linux 快速刪除大量小檔案方法

linux 快速刪除大量小檔案方法 當我們在linux系統中要刪除數萬或者數十萬甚至數百萬的檔案時使用rm rf 就不太好用,因為要等待很長一段時間。在這種情況之下我們可以使用linux系統命令rsync來巧妙的處理。rsync實際上用的是替換原理,處理數十萬個檔案也是秒刪。1.rsync安裝,有些...