1

Я пишу модульные тесты для некоторого кода и обнаружил, что простой gzip вызывает разницу в моих результатах. После дальнейшего изучения я обнаружил, что gzip дает другой файл .gz чем gzip -c . Почему это?

$ echo "foo" > bar
$ gzip bar
$ zcat bar.gz | gzip -c > test.gz
$ cmp bar.gz test.gz 
bar.gz test.gz differ: byte 4, line 1
$ stat bar.gz | grep Size
  Size: 28          Blocks: 0          IO Block: 4194304 regular file
$ stat test.gz | grep Size
  Size: 24          Blocks: 0          IO Block: 4194304 regular file
$ zcat bar.gz > foo1.txt
$ zcat test.gz > foo2.txt
$ cmp foo1.txt foo2.txt 
$ echo $?
0 

1 ответ1

3

Распаковка файла приведет к тому, что исходное имя файла будет сохранено как часть выходного заголовка.

(По умолчанию время модификации также сохраняется, поэтому даже два идентично созданных файла .gz будут отличаться.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .