Ich entpacke eine Zip-Datei (selbstentpackend, aber das ist wahrscheinlich egal) und bei einigen Dateien erhalte ich ein Dialogfeld, in dem ich gefragt werde, ob ich eine bereits entpackte Datei durch eine Datei ersetzen möchte, die gerade entpackt wird. Auf den ersten Blick verstand ich nicht, wie eine Zip-Datei dieselbe Datei mehr als einmal an derselben Stelle enthalten kann. Dann suchte ich mit 7zip (oder einem anderen Tool) nach der betreffenden Datei und fand Folgendes:
Der Unterschied liegt in der Blocknummer. Was passiert hier eigentlich?
Antwort1
Ja, das ZIP-Dateiformat erlaubt mehrere Dateien mit demselben Namen. Dateien in einem ZIP befinden sich nicht wirklich in Verzeichnissen, sondern haben einfach einen langen Namen, derbeinhaltet optional den Pfad. Und Dateien werden dem ZIP hinzugefügt, indem sie effektiv Ende an Ende aneinandergereiht werden. Der einzige Ort, an dem Synonyme im ZIP-Format ein Problem verursachen, ist das Verzeichnis, wo vermutlich die spätere Datei die frühere ersetzt. Aber wenn eine ganze ZIP-Datei extrahiert wird (im Gegensatz zum Extrahieren einzelner Dateien), besteht der allgemeine Ansatz darin, das Verzeichnis zu ignorieren und die Dateien einfach in der Reihenfolge zu extrahieren, in der sie im ZIP erscheinen.
Das angezeigte Bild zeigt natürlich den Inhalt der ZIP-Datei und nicht ein Windows-Verzeichnis.
Antwort2
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.
Darüber hinaus werden Dateien, die sich nur in der Groß-/Kleinschreibung ihres Dateinamens/Pfades unterscheiden, beim Extrahieren in ein Dateisystem, das nicht zwischen Groß- und Kleinschreibung unterscheidet (Windows oder Mac OS), als identisch betrachtet.
Antwort3
Anscheinend verwenden Sie Windows, das zwei Dateien, deren Namen sich nur in der Groß-/Kleinschreibung unterscheiden, als denselben Dateinamen betrachtet.
Es kann sein, dass Ihr Archiv auf einem Dateisystem erstellt wurde, bei dem die Groß- und Kleinschreibung beachtet wird (wie die meisten Linux-Dateisysteme), und die beiden Dateien unterschiedliche Groß- und Kleinschreibung hatten (Beispiel: EINTRÄGE, Einträge, Einträge).
Wenn Sie sich die Ausgabe ansehen, haben die Dateien dieselbe Größe, dasselbe Datum und denselben CRC. Diese Dateien sind also identisch und Sie können sie problemlos überschreiben. Es kann sein, dass jemand sie in einem anderen Format als lokales temporäres Backup kopiert hat, während er an diesen Dateien gearbeitet hat. Die Blocknummer zeigt, dass sie an verschiedenen Orten in der Zip-Datei gespeichert sind, was offensichtlich sein sollte.
Antwort4
Sie können nicht zwei identische Dateinamen im selben Pfad haben. Haben Sie überprüft, ob Ihr System die Erweiterungen verbirgt? Das könnte der mögliche Unterschied zwischen den beiden sein. Vielleicht ist eine davon eine Sicherungsdatei.