Wie erstelle ich ein identisches gzip der gleichen Datei?

8

Ich habe eine Datei, deren Inhalt identisch ist. Es wird in gzip übergeben und nur das komprimierte Formular wird gespeichert. Ich möchte in der Lage sein, die Zip erneut zu generieren, und meine Kopie nur aktualisieren, sollten sie sich unterscheiden. Wie es aussieht Diffing Tools (Diff, Xdelta, Subversion) sehen die Dateien als geändert haben.

Prämisse, ich speichere eine mysqldump einer wichtigen Datenbank in ein Subversion-Repository. Es ist meine Absicht, dass ein Cronjob die db regelmäßig ablegt, gzip und die Datei festschreibt. Derzeit wird jedes Mal, wenn die Datei gedumpt und dann gezippt wird, dies als abweichend betrachtet. Ich würde es vorziehen, wenn meine Revisionsnummern nicht alle 15 Minuten unnötig zunehmen würden.

Mir ist klar, dass ich die Datei als einfachen Text ausgeben könnte, aber ich würde es nicht bevorzugen, weil sie ziemlich groß ist.

Der Befehl, den ich momentan verwende, um die Dumps zu erzeugen, ist:

%Vor%

% ce_de% weist gzip an, die Dateiname / Zeitstempelinformationen zu entfernen. Die -n entfernt die letzte Zeile der Datei, in die mysqldump einen Zeitstempel setzt.

An diesem Punkt werde ich wahrscheinlich darauf zurückkommen, es im Klartext zu speichern, aber ich war neugierig, was für eine Lösung es gibt.

Gelöst, Herr. Bright war korrekt , ich hatte fälschlicherweise einen Großbuchstaben N verwendet, wenn das richtige Argument ein Kleinbuchstabe war.

    
Danny 20.03.2009, 18:32
quelle

3 Antworten

12
  

Die Option -N weist gzip an, die Datei zu entfernen   Dateiname / Zeitstempelinformationen.

Tatsächlich macht das genau das Gegenteil. -n bewirkt, dass der ursprüngliche Dateiname und der Zeitstempel vergessen werden.

    
Sean Bright 20.03.2009, 18:38
quelle
3

Ich denke, gzip behält das ursprüngliche Datum und den Zeitstempel der Datei (en) bei, was dazu führt, dass es ein anderes Archiv erzeugt.

%Vor%     
Brian Ensink 20.03.2009 18:38
quelle
1

Aber Vorsicht: zwei Gzips, die zu verschiedenen Zeiten derselben unveränderten Datei erstellt wurden, unterscheiden sich. Der Grund dafür ist, dass das gzip selbst mit dem gzip-Erstellungsdatum mit Zeitstempel versehen ist - dies wird in den Header der gzip-Datei geschrieben. So können die scheinbar unterschiedlichen Gzips genau den gleichen Inhalt enthalten.

    
Paul Beardsell 03.04.2013 10:48
quelle