Mam cztery pliki, które utworzyłem za pomocą svndump
test.svn
test2.svn
test.svn.gz
test2.svn.gz
teraz kiedy to uruchomię
md5sum test2.svn test.svn test.svn.gz test2.svn.gz
Oto wynik
89fc1d097345b0255825286d9b4d64c3 test2.svn
89fc1d097345b0255825286d9b4d64c3 test.svn
8284ebb8b4f860fbb3e03e63168b9c9e test.svn.gz
ab9411efcb74a466ea8e6faea5c0af9d test2.svn.gz
Nie mogę więc zrozumieć, dlaczego gzip
kompresja plików jest inna, czy umieszcza gdzieś znacznik czasu przed kompresowaniem? Miałem podobny problem, mysqldump
ponieważ używał pola daty na górze
Odpowiedzi:
gzip
przechowuje niektóre metadane oryginalnego pliku w nagłówku rekordu, w tym czas modyfikacji pliku i nazwę pliku, jeśli są dostępne. Zobacz specyfikację formatu pliku GZIP .Oczekuje się, że dwa
gzip
pliki nie są identyczne. Można to obejść, przekazującgzip
na-n
flagę, który zatrzymuje go przed tym oryginalną nazwę pliku i timestamp w nagłówku.źródło
Każdy plik .gz ma nagłówek z nazwą pliku ... Spróbuj
head test.svn.gz
ihead test2.svn.gz
źródło
head test2.svn.gz|hexdump -C
nie zepsuje twojego terminala