Wie kommt es, dass ich beim Extrahieren einer Zip-Datei zwei gleichnamige Dateien im selben Pfad erhalte?

12

Ich extrahiere eine Zip-Datei (selbstextrahierend, aber das spielt wahrscheinlich keine Rolle) und für einige Dateien wird ein Dialogfeld angezeigt, in dem ich gefragt werde, ob ich eine bereits extrahierte Datei durch eine Datei ersetzen möchte, die gerade dabei ist extrahiert werden. Auf den ersten Blick habe ich nicht verstanden, wie eine Zip-Datei dieselbe Datei mehr als einmal an derselben Stelle enthalten kann. Ich habe dann mit 7zip (oder einem anderen Tool) zu der fraglichen Datei navigiert und Folgendes gefunden:

Geben Sie hier die Bildbeschreibung ein

Der Unterschied liegt in der Blocknummer. Was passiert hier eigentlich?

Howiecamp
quelle

Antworten:

8

Ja, das ZIP-Dateiformat erlaubt mehrere Dateien mit demselben Namen. Dateien in einer ZIP-Datei befinden sich nicht in Verzeichnissen, sondern haben lediglich einen langen Namen, der optional den Pfad enthält . Und Dateien werden zur ZIP hinzugefügt, indem sie effektiv Ende an Ende verkettet werden. Der einzige Ort, an dem Synonyme ein Problem im ZIP-Format verursachen, ist das Verzeichnis, in dem vermutlich die spätere Datei die frühere ersetzt. Wenn jedoch eine gesamte ZIP-Datei extrahiert wird (im Gegensatz zum Extrahieren einzelner Dateien), besteht der allgemeine Ansatz darin, das Verzeichnis zu ignorieren und die Dateien nur in der Reihenfolge zu extrahieren, in der sie in der ZIP-Datei angezeigt werden.

Das gezeigte Bild zeigt natürlich den Inhalt der ZIP-Datei, kein Windows-Verzeichnis.

Daniel R Hicks
quelle
4

Ja. ZIP-Dateien KÖNNEN dieselbe Datei zweimal enthalten. Dies kann mit der Funktion "Zum Archiv hinzufügen" Ihres Zip-Tools erreicht werden. Standardmäßig überschreibt eine spätere Datei beim Extrahieren alle früheren Dateien, da dies normalerweise das gewünschte Verhalten ist.

Außerdem werden Dateien, die sich nur durch den Dateinamen / Pfad unterscheiden, als identisch angesehen, wenn sie in ein Dateisystem extrahiert werden, bei dem die Groß- und Kleinschreibung nicht berücksichtigt wird (Windows oder Mac OS).

Chris Nava
quelle
1

Sieht so aus, als würden Sie Windows verwenden, bei dem zwei Dateien mit Namen, die sich von Fall zu Fall unterscheiden, als der gleiche Dateiname angesehen werden.

Möglicherweise wurde Ihr Archiv auf einem Dateisystem erstellt, bei dem zwischen Groß- und Kleinschreibung unterschieden wird (wie bei den meisten Linux-Dateien), und die beiden Dateien hatten unterschiedliche Fälle (Beispiel: EINTRÄGE, Einträge, Einträge).

Wenn Sie sich die Ausgabe ansehen, haben die Dateien dieselbe Größe, dasselbe Datum und dieselbe CRC, sodass diese Dateien identisch sind. Sie können sie sicher miteinander überschreiben. Es kann sein, dass einige es mit einem anderen Fall als lokale temporäre Sicherung kopiert haben, während sie an diesen Dateien gearbeitet haben. Die Blocknummer ist, dass sie an verschiedenen Orten in der Zip-Datei gespeichert sind, was offensichtlich sein sollte.

Itai
quelle
0

Gleiche Datei, gleiche Erweiterung (oder in diesem Fall keine Erweiterung). Wie oben erwähnt, kann dies durch manuelles Hinzufügen mehrerer Dateien zur Zip-Datei verursacht werden, da die interne Struktur der Zip-Datei nicht wirklich ein Ordner ist. Dies kann auch verursacht werden, wenn die Zip-Datei auf einem System erstellt wird, bei dem zwischen Groß- und Kleinschreibung unterschieden wird, z. B. Linux, und auf einem Dateisystem geöffnet wird, bei dem die Groß- und Kleinschreibung nicht berücksichtigt wird, z. B. Windows.

Beachten Sie, dass unter Windows beim Ziehen und Ablegen zum Extrahieren von Dateien eine solche Kollision tatsächlich die GUI blockiert. Sie müssen jedoch nicht darauf zurückgreifen, die Aufgabe zu beenden und neu zu starten. Dies ist ein bekannter Fehler in 7-Zip und Sie können die Tastatur weiterhin verwenden, um durch die Optionen zu navigieren (z. B. Alle ersetzen), obwohl die Maus gesperrt ist -> http://sourceforge.net/p/sevenzip/bugs/1509/

DavidMWilliams
quelle
-3

Sie können nicht zwei identische Dateinamen im selben Pfad haben. Haben Sie überprüft, ob Ihr System die Erweiterungen versteckt? Das könnte der mögliche Unterschied zwischen den beiden sein. Vielleicht ist eine eine Sicherungsdatei.

ngen
quelle
Dieselbe Datei (mit der Erweiterung, die zufällig leer ist), derselbe Pfad. Bitte sehen Sie den Screenshot flickr.com/photos/46007162@N03/5278220416 - es zeigt dieselbe Datei, aber als zwei verschiedene Blöcke. Ich bin mir nicht sicher, was das bedeutet.
Howiecamp
2
Wie an anderer Stelle angegeben, kann ein Zip-Archiv dieselbe Datei zweimal enthalten.
Daniel R Hicks