Можно ли распаковать файл .gzip с помощью tar?

505
mmorin

Я скачал .gzфайл с анонимными данными переписи и сжал около 1 ГБ. Я не могу проверить это с tar:

$ tar -tf census.csv.gz  tar: Unrecognized archive format tar: Error exit delayed from previous errors. 

но я могу проверить и распаковать его gzip:

$ gzip -l census.csv.gz  compressed uncompressed ratio uncompressed_name 949332135 886077017 -7.2% census.csv $ gzip -d census.csv.gz  

Я также могу извлечь архив, дважды щелкнув по нему, чтобы открыть утилиту архивирования. Я более запутался, потому что на manстранице tarнаписано, что у нее есть метод gzip.

Можно ли tarраспечатывать и распаковывать .gzфайлы?

Примечания: gzipнаходится /usr/bin/gzipна macOS High Sierra 10.13.5.

0
Я думаю, что ваша путаница заключается в том, что «tar» - это (несжатый) формат для размещения нескольких файлов в одном файле. Tar может опционально сжать этот файл tar как часть своей работы (создание файла tar.gz или .the файла) - ключ заключается в том, что gzip сжимает поток / один файл, в то время как tar преобразует несколько файлов в 1 - это вы обычно не используете tar в одном файле. davidgo 6 лет назад 1
@ Давидго, я думаю, я вижу. Может ли tar распаковать файлы tar.gz, но не файлы .gz (без `.tar)? mmorin 6 лет назад 0
Это показалось бы мне правильным. (Я не за своим компьютером - поэтому я не могу быть уверен, что не было сделано неясного переключателя, чтобы разрешить это - но я могу сказать, что tar обычно не используется для этой цели. davidgo 6 лет назад 0
Спасибо @davidgo. Хотите опубликовать ответ, чтобы я его принял? mmorin 6 лет назад 0

1 ответ на вопрос

1
davidgo

TAR обычно используется для объединения / демультиплексирования нескольких файлов в / из одного архива (TAR исходит из Tape Archive - т.е. работает с потоком данных, который записывается или читается с ленты), и может дополнительно работать со сжатым архивом (используя gzip среди других вариантов), но он не был разработан как инструмент сжатия / распаковки общего назначения.

Аналогично, GZIP обычно работает только с одним файлом (где он сжимает более 1 файла, каждый из них работает отдельно).

tar.gz(Или .tgz) обозначает группу файлов, которые были объединены в единый поток с ТАР, а затем gzipPed. TAR может обрабатывать эти файлы, но не отдельные .gzфайлы общего назначения .

Читайте больше в Википедии .