Fixieren Sie den * gekürzten Reißverschluss mit dem Terminal und bleiben Sie dabei hängen

0

Ich habe eine * zip mit vielen Bildern aus dem letzten Jahr, die falsch komprimiert wurde und deren Endaussage fehlt. Ich habe "zip -FF" im Terminal verwendet, aber es bleibt an einem * zip im * zip hängen ...

Ich bin nicht sehr versiert in dem, was ich tue, und ich hoffe, dass mich jemand in die richtige Richtung weisen kann, um von hier aus fortzufahren. Das Beste, was ich mir einfallen lassen konnte, war:

zip -FF badzip.zip --out goodzip.zip -x "* .zip"

Aber es funktioniert nicht. Es gibt andere * zip-Dateien, die ohne Probleme kopiert werden können, aber eine in besonders stumpf es einfach. Danke für Ihre Hilfe!

Caitlin C.
quelle
Einige Gedanken: 1) In den guten alten DOS-Tagen hatte PK (UN) ZIP ein Tool namens PKZIPFIX. Vielleicht hilft das, oder Sie finden andere ZIP-Reparatur-Tools. 2) Hält Ihr Versuch bei der fehlerhaften Datei an oder überspringt er nur die fehlerhafte Datei? Die beschädigte Datei kann trotzdem verloren gehen, aber wenn Sie zumindest die anderen entpacken können, haben Sie diese. Viele Entpacker können das "Überspringen" -Szenario ausführen. Sie müssen nach einem Mac-Entpacker suchen, der dies ermöglicht.
Jan Doggen
Wenn Sie Zugriff auf einen Windows-Computer haben, ist www.izarc.org/ für den Umgang mit beschädigten Archiven geeignet. Nicht sicher, was für Macs verfügbar ist.
jam
Nur ein paar Infos: Eine zip-Datei besteht aus einer Reihe komprimierter Dateien, von denen jede einen Header mit Namen, Größe, Komprimierungsschema usw. enthält. Immerhin handelt es sich bei den einzelnen Dateien um ein Verzeichnis, in dem die Namen den Offsets in der zip-Datei zugeordnet werden einzelne dateien beginnen. Wenn die Zip-Datei abgeschnitten wird, geht das Verzeichnis verloren, die Zip-Datei kann jedoch weiterhin nacheinander durchsucht werden, um die darin enthaltenen einzelnen Dateien zu extrahieren (die nicht ebenfalls abgeschnitten wurden). Normalerweise ist dies das, was ein "Zip Repair" -Tool zuerst versuchen würde, obwohl man möglicherweise mit Parametern herumspielen muss, um diesen Modus zu erhalten.
Daniel R Hicks

Antworten:

0

Möglicherweise können Sie nur das fehlerhafte Bild aus dem Archiv löschen, indem Sie den Inhalt auflisten und dann das letzte Element selektiv löschen:

zip -sf badzip.zip
zip -d badzip.zip badfile.jpg

Wenn die Auflistung nicht funktioniert (aufgrund der Beschädigung), Sie jedoch wissen, welches Bild beschädigt ist, können Sie versuchen, das Archiv in einem Texteditor zu öffnen. TextWrangler zeigt Ihnen die Dateiliste an. Von dort aus können Sie den Inhalt der beschädigten Datei löschen und versuchen, sie zu extrahieren.

beroe
quelle