如何有效率地刪除單一目錄中超過2,000,000個檔案?

如何有效率地刪除單一目錄中超過2,000,000個檔案?

我在「Internet 臨時檔案」中有超過 2,000,000 個(沒錯,超過 200 萬個)檔案。

這種困境是運行腳本的計劃任務的結果。安裝 Visual Studio 後,每次執行時都會產生大量「Assembly Binder Log Entry」.HTM 檔案。

它每 15 分鐘就會執行一次此操作8個月。現在,其中有超過 2,000,000 個、價值 8 GB 的檔案(難怪 WinDirStat 和 Everything 都崩潰了!)。


如何刪除資料夾而不遍歷其全部 2,000,000 個內容?

我嘗試在資源管理器中打開父資料夾並簡單地按下該Del鍵。然後 Windows 繼續嘗試將​​ 2,000,000 個檔案傳送到回收站(不)。它從未超過“發現專案”階段。

接下來我使用了 PowerShell ( Remove-Item 'Content.IE5'),但它試圖遞歸遍歷每個檔案並單獨刪除它們。雖然這看起來最終會起作用,但我覺得一定有更好的方法。

如果你能告訴我 Assembly Binder 日誌條目檔案到底是什麼,那就加分了…

答案1

根據 StackOverflow 的類似問題,您可以執行以下操作。引用最高評價的答案(不是接受的答案),執行此類任務的最佳方法是:

我發現的最好的是一個兩行批次文件,第一遍刪除文件並輸出到 nul,以避免為每個單個文件寫入螢幕的開銷。然後第二遍清理剩餘的目錄結構:

> del /f/s/q foldername > nul 
> rmdir /s/q foldername

顯然,您需要調整這個答案以適應您的特定目的,因為您要刪除一系列文件而不是資料夾。

該用戶建議(我同意)實現此類任務的最糟糕方法是選擇全部,Del其次是選擇全部Shift+Del

恐怕我不知道日誌條目文件是什麼。

來源 -堆疊溢位

答案2

嘗試這個:

開始 > 執行 > cmd > cd 到所需目錄

進入所需目錄或父目錄後,鍵入 del (範例)C:\Users\username\Desktop*desiredfile.ext

這將在沒有確認的情況下刪除文件。

答案3

關閉 8+3 檔案名,從命令列刪除,然後再次開啟 8+3。一旦您超過了前幾萬個文件,追蹤這組額外的檔案名稱就會增加開銷。

相關內容