Zip

解壓錯誤,可以恢復嗎?

  • April 27, 2016

幾個月前,我用一些婚禮影片(!!)壓縮了 4 個單獨的文件夾。今天嘗試解壓,最後2個沒問題,但是前2個報錯:

  carmensandoval$ unzip AlineJoseLuisVideoCabina_Folder1.zip

  Archive:  AlineJoseLuisVideoCabina_Folder1.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
  unzip:  cannot find zipfile directory in one of AlineJoseLuisVideoCabina_Folder1.zip    
  or AlineJoseLuisVideoCabina_Folder1.zip.zip, and cannot find   
  AlineJoseLuisVideoCabina_Folder1.zip.ZIP, period.

正如其他人在另一篇類似文章中所建議的那樣,我檢查了我的文件是否確實是 ZIP 文件,它們是:

file AlineJoseLuisVideoCabina_Folder1.zip 
AlineJoseLuisVideoCabina_Folder1.zip: Zip archive data, at least v1.0 to extract

我懷疑這兩個文件夾在上傳它們以將它們發送到客戶端時已損壞(它們花了一段時間並且連接中斷了幾次,這是否重要?)有沒有辦法嘗試至少取回一些裡面是什麼?

首先要做的是製作文件的副本,以確保可以正確讀取它,例如讀取到名為 的文件xx.zip,並確定其長度:

cp AlineJoseLuisVideoCabina_Folder1.zip xx.zip
ls -l xx.zip

您可以從提取的其他 zip 文件中獲得任何照片的大小,並且由於您無法在 zip 文件中壓縮那麼多照片,因此您可以計算出您期望的照片數量是否適合該存檔。

之後,假設文件足夠大以包含任何可恢復的內容,請使用:

zip -FF xx.zip --out yy.zip

嘗試恢復 zip 文件(即zip命令,而不是unzip)。

引用自:https://unix.stackexchange.com/questions/168968