如何測試資料夾中的所有 zip 檔案以驗證它們是否已損壞?

如何測試資料夾中的所有 zip 檔案以驗證它們是否已損壞?

很久以前有一個名為 CFAtest 的實用程式可以很好地完成此任務,但它已經消失了。

基本上,我正在尋找一個類似的工具(最好是圖形化的),它將遍歷給定的路徑(最好包括子資料夾)並測試它找到的所有 zip 檔案。

體面的日誌記錄選項將是一個優點。

答案1

尋找每個子資料夾中的每個 zip 文件

這將在當前資料夾 ( ) 的所有子資料夾中找到擴展名為(或或或等,忽略大小寫, )的.檔案 ( ) ,並測試它們的完整性(選項)是否安靜(選項,一起) 。相當的意思是:不列出zip檔案的內容,而只報告測試結果。-type fzipZIPZipzIp-iname-t-q-tq

find . -type f -iname '*.zip' -exec unzip -tq {} \;

僅當前資料夾(無子資料夾)

如果您只想檢查當前目錄中的文件,而不是任何子資料夾中的文件,請使用

unzip -tq '*.[Zz][Ii][Pp]'

在包含 zip 檔案的目錄中。這也會檢查檔案副檔名ZIPZipzIp等等,忽略大小寫。

答案2

在 Windows 上我使用7zip:它提供圖形使用者介面,免費並支援多種存檔檔案格式,包括 zip。

在 Windows 資源管理器上導航至要分析的給定資料夾。搜索*.zip,選擇所有文件,右鍵單擊,選擇“測試存檔”

在此輸入影像描述

然後等待(請注意,在 7z 開始測試之前,explorer.exe 需要大約 10 分鐘才能完成 100,000 個 .zip):

在此輸入影像描述

答案3

艾瑞克的答案在Mac上對我不起作用,但這適用於當前資料夾和所有子資料夾中的zip:

find . -name '*.zip' -exec unzip -tq {} \;

為每個文件輸出:

No errors detected in compressed data of ./2013-10-16.zip.

答案4

它可能不完全符合您的要求,但有一個名為 Zip2Fix 的工具。

我沒用過,但你可以從這裡下載:

http://leelusoft.blogspot.com/2011/06/zip2fix-10.html

相關內容