G zip: Как работает сжатие GZIP / Хабр

Содержание

Справочник по утилитам. gzip

Справочник по утилитам. gzip

Сжатие
или
распаковка файлов (UNIX)


Синтаксис:

Сжатие/распаковка
файлов:

gzip
[-cdfhLlNnqrtVv19]
[-S
суффикс]
[
имя…]

Только
распаковка:

gunzip
[-cfhLlNnqrtvV]
[
имя…]

Запуск
утилиты
cat для сжатого файла:

zcat
[-hLV]
[
имя…]


Поддерживаемые
платформы:

QNX
Neutrino,
Microsoft Windows


Опции:

-c

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

-d

Распаковать.

-f

Принудительно
сжать
или распаковать файл, даже если
он содержит несколько ссылок или
соответствующий файл уже существует.
Если опция -f
не указана, то в случае выполнения
утилиты не в фоновом режиме gzip
запрашивает подтверждение перезаписи
существующего файла.


Примечание
.
Для
сжатия или распаковки файлов в
файловой системе RAM (/dev/shmem)
используется
опция
f
.

-h

Вывести
справку.

-L

Отобразить
лицензию
gzip.

-l

Вывести
содержимое
сжатого файла в виде списка.

-N

Сохранить
или
восстановить исходное имя и метку
времени.

-n

Не
сохранять
и не восстанавливать исходное
имя и метку времени.

-q

Скрыть
все
предупреждения.

-r

Выполнить
рекурсивный
переход по структуре
каталогов. Если какое-либо из указанных
в командной строке имен файлов является
именем каталога, утилита gzip
переходит в каталог и выполняет сжатие
найденных там файлов (или их распаковку
в случае использования утилиты gunzip).

-S
суффикс

Использовать
указанный
суффикс
в сжатых файлах.

-t

Выполнить
тестирование.
Проверить целостность
сжатого файла.

-V

Версия.
Отобразить
номер версии и опции
компиляции.

-v

Вывести
расширенную
информацию. Отобразить имя
и сокращение размера в процентах для
каждого сжатого файла.

1
-9

Регулировать
скорость
сжатия, где

-1

(один) метод сжатия с наивысшей
скоростью (наименьшее сжатие), а

-9

метод сжатия с наименьшей скоростью
(оптимальное сжатие).

Описание:

Утилита
gzip
сокращает размер указанных файлов с
помощью алгоритма кодировки Lempel-Ziv
(LZ77). Если возможно, каждый файл заменяется
файлом с расширением .gz
при сохранении данных о режиме,
принадлежности, времени доступа и
изменения. (Расширение -z
используется для VMS, z
для MSDOS, OS/2 и Atari.) Если файлы не указаны,
выполняется сжатие стандартного потока
ввода в стандартный поток вывода. Если
новое имя файла является слишком длинным,
утилита gzip
усекает его с сохранением исходного
имени файла в сжатом файле. Утилита gzip
выполняет попытку сжатия только
стандартных файлов. В частности, она
игнорирует символьные ссылки.

Для
восстановления
сжатых файлов до исходного
вида используются утилиты gzip
-d,
gunzip
или zcat.

Примечание.
На
данные утилиты распространяются
условия общедоступной лицензии GNU Public
License (GPL). Они предназначены для использования
в системах разработки программ.

Утилита
gunzip
заменяет каждый файл из списка в командной
строке, имя которого оканчивается на
.gz,
.GZ
или -z,
а
начинается с корректного «магического»
числа, несжатым файлом без исходного
расширения. Эта утилита также распознает
специальные выражения .tgz
и .taz
в качестве условных обозначений для
.tar.gz
или .tar.GZ.

Утилита
gunzip
в настоящее время может распаковать
файлы, созданные посредством утилит
gzip,
zip,
compress
или pack.
Формата
ввода определяется автоматически.
При использовании первых двух форматов
утилита gunzip
проверяет 32-разрядный CRC. Для формата
pack
gunzip
проверяет длину в несжатом виде. Формат
сжатия не предусматривает проверок
целостности. Однако в некоторых случаях
утилита gunzip
может обнаружить поврежденный файл
.GZ.
При
ошибке распаковки файла .GZ
не следует полагать, что файл .GZ
является корректным только по причине
отсутствия предупреждений со стороны
стандартной утилиты uncompress.
Как
правило, это означает, что стандартная
утилита uncompress
не проверяет входные данные и генерирует
некорректный вывод.

Утилита
gzip
используется для распаковки файлов,
созданных посредством zip,
только
в том случае, если эти файлы
включают один компонент, сжатый методом
«deflation». Эта функция предназначена
только для преобразования файлов tar.zip
в формат tar.gz.
Для
извлечения файлов zip
с несколькими компонентами следует
использовать вместо gunzip
утилиту unzip.
(Обратите
внимание, что утилита unzip
не входит в комплект поставки QNX Neutrino.)

Утилита
zcat
идентична gunzip
-c.

некоторых системах утилиту zcat
можно установить в качестве gzcat
с сохранением исходной ссылки на утилиту
compress.)
Утилита
zcat
выполняет распаковку файлов из списка
в командной строке или из стандартного
ввода и записывает извлеченные данные
в стандартный поток вывода. Она
распаковывает файлы с корректным
«магическим» числом независимо от
наличия суффикса . gz.

Утилита
gzip
использует алгоритм Lempel-Ziv, применяемый
в zip
и PKZIP.
Общее
сжатие зависит от размера входного
файла и распределения общих подстрок.
Как правило, текст (исходный текст или
текст на английском языке) сокращается
на 6070%. Качество сжатия, как правило,
выше, чем при использовании алгоритма
кодировки LZW (compress),
метода
Хаффмана (pack)
или
адаптивного метода Хаффмана
(compact).

Сжатие
выполняется
даже в том случае, если
сжатый файл превышает исходный по
размеру. Самый неблагоприятный результат
увеличение на несколько байтов,
используемых для заголовка файла gzip,
плюс
на 5 байтов на каждый блок из 32 КБ
либо, для крупных файлов, увеличение на
0,015%. При сжатии и распаковке утилита
gzip
сохраняет данные о режиме и принадлежности,
а также временные метки файлов.

Можно
выполнить
конкатенацию нескольких
сжатых файлов. В этом случае утилита
gunzip
извлекает все компоненты одновременно.
Пример:

gzip
-c
file1 > foo.gz

gzip
-c
file2 >> foo.gz

При
этом
запись:

gunzip
-c
foo

эквивалентна
следующей
записи:

cat
file1
file2

В
случае
повреждения одного из компонентов
файла .gz
другие компоненты можно восстановить
(при условии удаления поврежденного
компонента). Однако эффективность сжатия
можно повысить путем одновременного
выполнения операции для всех компонентов:

cat
file1
file2 | gzip > foo. gz

Сжатие
выполняется
более эффективно, чем при
использовании следующей команды:

gzip
-c
file1 file2 > foo.gz

Повторное
сжатие
составных файлов для усиления
степени сжатия выполняется с помощью
следующей команды:

zcat
old.gz
| gzip > new.gz


Переменные
среды:

GZIP

Набор
опций
по умолчанию для утилиты gzip.
Эти
опции интерпретируются первыми и
могут быть перезаписаны явными параметрами
командной строки. Пример:

export
GZIP=»-8
-v»


Статус
завершения:

2

Операция
выполнена
успешно, но, возможно, не на
100%; в процессе создано предупреждение.

1

Возникла
ошибка;
операция завершена неуспешно.

0

Операция
выполнена
успешно.


Автор:

GNU

Предупреждения:

Расширение
.gz
также уже используется утилитой pack
в UNIX. Прозрачная распаковка для программ,
для которых файлы .gz
должны иметь формат «pack», достигается
путем создания привязки gzip
к pcat.


gzip — Национальная библиотека им. Н. Э. Баумана

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 16:56, 11 января 2019.

gzip— это формат файлов, утилита, созданная для сжатия и восстановления файлов. Программа была создана Jean-loup Gailly и Mark Adler как бесплатное ПО на замену уже существовавшим программам на системе UNIX. Версия 0.1 была выпущена 31 октября 1992, а следом версия 1.0 в феврале 1993. [Источник 1].

В соответствии с традициями UNIX-программирования, gzip выполняет только две функции: сжатие и распаковку одного файла. Упаковка нескольких файлов в один архив невозможна. При сжатии к оригинальному расширению файла добавляется суффикс .gz. Для упаковки нескольких файлов обычно их сначала объединяют в один файл, а потом этот уже сжимают с помощью gzip. Таким образом, сжатые архивы обычно имеют двойное расширение (см. рисунок 1). [Источник 2]

Рисунок 1 — Схема работы с архиватором tar и gzip

Содержание

  • 1 Формат файлов
    • 1.1 Алгоритим LZ77
    • 1.2 Кодирование Хаффмана
  • 2 Реализация
    • 2.1 GNU GZIP
    • 2.2 7-zip
    • 2.3 Zopfli
  • 3 Ключи командной строки команды gzip
  • 4 Источники

Формат файлов

gzip основан на алгоритме DEFLATE, который представляет собой комбинацию кодирования LZ77 и Хаффмана. DEFLATE задумывался как замена LZW и другим запатентованным алгоритмам сжатия данных, которые в то время ограничивали удобство сжатия других архиваторов.

gzip также часто используется для обозначения формата файла gzip, который представляет собой:

  • 10-байтовый заголовок, содержащий магическое число (1f 8b), идентификатор сжатия (08 для DEFLATE), флаги файлов, 32-битную метку времени, флаги сжатия и идентификатор операционной системы.
  • Необязательные дополнительные заголовки, обозначаемые флажками файлов, такими как исходное имя файла
  • Тело кода, содержащее информацию о нагрузке со сжатием DEFLATE

GZIP не следует путать с форматом ZIP архива, который также использует DEFLATE. Формат ZIP может содержать файлы без предыдущей архивацией, но он менее компактный, нежели сжатые архивы, содержащие те же данные.

Алгоритим LZ77

Алгоритм LZ77 заменяет повторные вхождения данных на «ссылки». Т.е. если в имеющихся данных какая-то цепочка элементов встречается более одного раза, то все последующие её вхождения заменяются «ссылками» на её первый экземпляр. Алгоритм прекрасно рассмотрен horror_x и описан здесь. Каждая такая ссылка имеет два значения: смещение и длина.

Кодирование Хаффмана

Кодирование Хаффмана является методом кодирования с переменной длиной, которая назначает более короткие коды к более частым «символам». Проблема с переменной длиной кода, как правило в том, что нам нужен способ узнать, когда код закончился и начался новый, чтобы расшифровать его. Кодирование Хаффмана решает эту проблему, создав код префикса, где ни одно кодовое слово не является префиксом другого.

Реализация

Спецификация DEFLATE обеспечивает некоторую свободу разработчикам реализовать алгоритм с использованием различных подходов, пока полученный поток совместим со спецификацией. [Источник 3].

GNU GZIP

Реализация GNU является наиболее распространенной и была разработана, чтобы стать заменой для утилиты архивации, свободной от запатентованных алгоритмов.
Существует 9 уровней сжатия, от «1» (самого быстрого с наименьшим коэффициентом сжатия) до «9» (самого медленного с лучшей степенью сжатия). По умолчанию, используется «6». [Источник 4]

7-zip

7-zip реализуется алгоритм DELFATE иначе и обычно архивирует с большим коэффициентом сжатия.
7-zip так же доступен для Windows и обеспечивает реализацию для других методов сжатия, таких как 7z, xz, bzip2, zip и прочих.

Zopfli

Zopfli идеально подходит для одноразового сжатия, например в ситуациях, когда файл единожды сжимается и многоразово используется. Он заметно медленнее, но сжатие на 5-8% лучше, чем у других.

Ключи командной строки команды gzip

 -0  –   -9 - регулировка степени сжатия:
         -0 - вообще без сжатия,
         -6 - уровень сжатия по умолчанию,
         -9 - максимальный уровень сжатия;
 -c - оставлять исходные файлы нетронутыми, выводить результат
      на устройство стандартного вывода;
 -d - распаковка;
 -l - вывод информации о содержимом сжатого файла;
 -t - тестирование целостности сжатых данных;
 -v - режим вывода дополнительной информации в процессе работы;
 -h - вывод подсказки об использовании программы. 

Источники

  1. ↑ gzip // gzip. URL: https://www.gzip.org/ (дата обращения 10.12.2018).
  2. ↑ GNU Gzip Wikipedia // Wikipedia. [2019] Дата изменения: 09.04.2018. URL: https://ru.wikipedia.org/wiki/Gzip (дата обращения 10.12.2018).
  3. ↑ habr Gzip // habr. [2006-2019] Дата изменения: 05.05.2014. URL: https://habr.com/post/221849/ (дата обращения 10.12.2018).
  4. ↑ GNU Gzip // GNU. [1997-2009] Дата изменения: 03.05.2018 URL: http://www.gnu.org/software/gzip/ (дата обращения 10.12.2018).

404: Страница не найдена

Дата центр

Страница, которую вы пытались открыть по этому адресу, похоже, не существует. Обычно это результат плохой или устаревшей ссылки. Мы приносим свои извинения за доставленные неудобства.

Что я могу сделать сейчас?

Если вы впервые посещаете TechTarget, добро пожаловать! Извините за обстоятельства, при которых мы встречаемся. Вот куда вы можете пойти отсюда:

Поиск

  • Узнайте последние новости.
  • Наша домашняя страница содержит самую свежую информацию о Центре обработки данных.
  • Наша страница о нас содержит дополнительную информацию о сайте, на котором вы находитесь, Data Center.
  • Если вам нужно, свяжитесь с нами, мы будем рады услышать от вас.

Просмотр по категории

SearchWindowsServer


  • Как использовать Microsoft Sentinel с Office 365 для поиска рисков

    Продукт безопасности пытается выявить угрозы, исходящие от приложений и служб, а затем помогает предприятию с …


  • Как исправить блокировку учетной записи Active Directory с помощью PowerShell

    Имея больше приложений и учетных данных, пользователи могут быть заблокированы в своих учетных записях после слишком большого количества попыток входа в систему. Научитесь пользоваться…


  • Сравните эти интерфейсные инструменты PowerShell с графическим интерфейсом

    Эти предложения предоставляют порталы, позволяющие избежать проблем с безопасностью и других камней преткновения, которые мешают организациям предоставлять больше. ..

Облачные вычисления


  • Как выполнять и автоматизировать ротацию ключей в Azure Key Vault

    Чтобы добавить еще один уровень безопасности, узнайте, как автоматически менять ключи в хранилище ключей Azure с помощью пошаговых инструкций…


  • Развертывание Azure Key Vault и управление им с помощью Terraform

    Terraform управляет ресурсами с помощью файлов конфигурации на облачных платформах. Следуйте этому пошаговому руководству, чтобы узнать, как …


  • 6 разработчиков вариантов PaaS с открытым исходным кодом, о которых следует знать в 2023 году

    PaaS с открытым исходным кодом — хороший вариант для разработчиков, которым нужен контроль над хостингом приложений и упрощенное развертывание приложений, но не…

Хранение


  • Лучшие методы хранения данных включают безопасность, устойчивость

    Бюджеты скудны, а риски повсеместны, поэтому администраторам крайне важно получить максимальную отдачу от хранилища. Эти советы касаются областей …


  • Топ-5 тенденций в области хранения данных на 2023 год

    Эти пять тенденций в области хранения данных включают те, которые только начинают набирать обороты, и те, которые приобретают все большую актуальность, в том числе …


  • RackTop Systems и Seagate углубляют сотрудничество в области безопасных NAS

    RackTop Systems и Seagate предлагают дополнительные устройства хранения данных «под ключ» и интеграцию с частным облаком, сочетая безопасность …

Использование Tar и Gzip/Gunzip для создания или распаковки файлов GZ/TGZ в Linux

Утилиты Tar и Gzip часто используются вместе для создания сжатых файлов TGZ/TAR.GZ, что может помочь в эффективном перемещении данных между системами. В этой статье рассматриваются различия между файлами TAR, GZ, TAR.GZ, TGZ и ZIP. Продолжайте читать, чтобы узнать, как использовать эти файлы в Linux.

В чем разница между файлами TAR, GZ, TAR.

GZ, TGZ и ZIP?

Что такое файл TAR?

Аббревиатура файла TAR расшифровывается как Tape Archive. Файл TAR объединяет несколько файлов. Файл TAR не уменьшает размер, так как не используется сжатие.

Что такое файл GZ?

Файл GZ создается утилитой сжатия Gzip . Файл GZ представляет собой сжатый один файл, поскольку0086 Утилита сжатия Gzip сжимает только один файл. Если вы сжимаете несколько файлов с помощью утилиты сжатия Gzip , она создает несколько файлов GZ . Утилита сжатия Gzip широко используется в операционных системах Linux / Unix .

Что такое файл TAR.GZ?

Файл TAR.GZ представляет собой комбинацию файла TAR и файла GZ в том смысле, что это архивный файл TAR , сжатый с помощью0086 Утилита сжатия Gzip . Файл TAR.GZ чаще всего встречается в операционных системах Linux / Unix .

Что такое файл TGZ?

Файл TAR.GZ часто называют и называют файлом TGZ .

Что такое ZIP-файл?

Файл ZIP объединяет несколько файлов так же, как файл TAR , а также имеет встроенное сжатие, как и файл GZ . А Почтовый индекс чаще всего встречается в операционных системах Windows . Утилита сжатия Zip часто используется в операционных системах Windows .

Что такое Tarball или Tarfile?

tarball или tarfile — это неофициальное имя, используемое для ссылки на архивный файл в одном из следующих  TAR  форматов файлов:

  • TAR  File (файл архива ленты)
  • TAR. GZ или 6 Файл TGZ (только при сжатии с использованием Утилита сжатия Gzip )
  • TAR.BZ2 или TBZ Файл (только при сжатии с помощью утилиты сжатия Bzip2 )

Архив или tar-файл — это имя группы файлов, которые объединены вместе. Эти файлы создаются командой tar. Сам по себе Tar не поддерживает сжатие напрямую. Он часто используется с утилитой сжатия, такой как Gzip или Bzip2 , чтобы освободить место на диске. Эти утилиты сжатия обычно сжимают только один файл, поэтому они используются в сочетании с Tar , который может создавать один файл из множества файлов.

Если tar-файл сжат с помощью утилиты сжатия Gzip  , tar-файл будет заканчиваться на TAR.GZ . С помощью команды Gunzip пользователи  Linux могут распаковать файлов TAR. GZ или TGZ . Пользователи Windows также могут создавать и расширять файлы tarball с помощью утилиты сжатия 7-Zip .

Использование Tar и Gzip/Gunzip для создания или распаковки файлов GZ/TGZ в Linux 9Файлы 0082

GZ и TGZ считаются стандартами сжатия и архивирования файлов для систем Linux . Таким образом, знание того, как создавать и распаковывать файлы GZ и TAR.GZ , может помочь вам выполнять различные задачи администрирования веб-сайтов, включая создание резервных копий и восстановление веб-сайтов из них. В этой статье мы узнаем, что такое утилиты Gzip и Tar и как создавать и распаковывать GZ и TGZ/TAR.GZ файлов в Linux.

Tar и Gzip: как они работают

Tar и Gzip — популярные системные Linux утилиты для сжатия и архивирования файлов. Хотя оба инструмента обычно используются вместе, Tar и Gzip выполняют разные задачи.

Утилита архивации файлов Tar

Tar — это утилита, используемая для объединения нескольких файлов в один файл, обычно называемый архивом, без их сжатия. Другое название tar-архива — tar-архив, представляющий файл с расширением 9.0086 TAR расширение файла. Вы можете думать о архиве как о контейнере для нескольких файлов, который делает их хранение и перемещение более удобным.

Tar не изменяет атрибуты файловой системы, такие как разрешения или права собственности на файлы, включенные в архив; он сохраняет их в архиве. Даже после создания архива вы можете добавлять в него файлы или удалять из них файлы, а также изменять имена файлов, если только архив не был сжат. Команда tar используется для управления TAR и TAR.GZ в системе Linux , включая их создание, изменение и извлечение из них файлов.

Тарболы изначально использовались для создания резервных копий и перемещения их на локальные ленточные накопители в качестве ленточных архивов, поэтому термин Tar (сокращение от ленточный архив) получил свое название изначально. К сожалению, сам Tar не сжимает файлы, поэтому размер архива Tar равен объему дискового пространства, которое занимают содержащиеся в нем файлы. Но в наши дни трудно представить себе использование Tar без сжатия файлов, что позволяет архивам Tar занимать меньше места на диске и, следовательно, упрощает их передачу между системами.

Tar поддерживает несколько методов сжатия, наиболее распространенными из которых являются утилиты сжатия Gzip/Gunzip и Bzip2/Bunzip2 . Использование Tar вместе с Gzip для сжатия файлов стало лучшим решением для архивирования файлов для Linux 9. 0087 .

Метод сжатия файлов Linux Gzip

Gzip — самая популярная утилита сжатия файлов для систем Linux , которую можно использовать отдельно для сжатия отдельных файлов. Команды Gzip и Gunzip сжимают файл, в результате чего создается новая сжатая версия, а исходный файл по умолчанию удаляется. Файлы, сжатые с помощью Gzip , будут иметь расширение GZ . Поэтому в паре с Tar , сжатый архив будет сохранен как файл TAR.GZ или TGZ .

Gzip по сравнению со сжатием файлов Zip

Хотя Gzip использует тот же алгоритм сжатия, что и Zip , известная утилита для Windows , она может сжимать один файл за раз, поэтому Tar используется в первую очередь. для создания архива, который Gzip  затем сожмет. С другой стороны, Zip сжимает каждый файл перед добавлением в архив, что приводит к увеличению размера файла архива. Однако сжатие архива затрудняет извлечение отдельных файлов без предварительной распаковки всего архива.

Как создавать и распаковывать файлы GZ/TGZ в Linux

Команды Tar и Gzip/Gunzip позволяют системным администраторам создавать и распаковывать файлы GZ и TGZ . Как и многие другие утилиты Linux  , они предоставляют набор флажков, которые помогают выбрать параметры, необходимые для более эффективного использования функциональных возможностей команд для достижения конкретных целей. Gzip/Gunzip и Tar устанавливаются по умолчанию на большинстве Linux , поэтому все, что вам нужно, это доступ SSH и базовые знания интерфейса командной строки Linux .

Использование Gzip/Gunzip для создания или распаковки файлов GZ

Команды Gzip и Gunzip можно использовать для распаковки файлов GZ в Linux , за исключением сжатых архивов Tar . Хотя файл TAR.GZ представляет собой архив TAR , сжатый с помощью Gzip , только 9Команда 0086 Tar  позволит вам распаковать и извлечь из него файлы.

Как сжать файл с помощью Gzip

Как мы уже говорили, вы можете сжать отдельный файл, создав его новую версию с расширением GZ , сохранив при этом те же права доступа к файлу и владельца. По умолчанию исходный файл будет удален, поэтому вам потребуется разархивировать файл GZ , чтобы продолжить его использование. Однако это поведение можно изменить. Ниже мы сожмем три файла из текущего рабочего каталога, используя Сжатие Gzip .

 # Сжатие нескольких файлов с помощью GZIP
gzip -kv файл1 файл2 файл3 

Мы сохраняем исходные файлы, используя флаг -k , и можем видеть процентное сокращение и имена файлов, обрабатываемых по мере выполнения команды, используя параметр -v . Благодаря приведенной выше команде в каталоге будут созданы три новых файла GZ . Флаг -k может быть недоступен в некоторых случаях, поэтому нам нужно будет использовать -c опция, чтобы сохранить исходный файл.

Мы можем использовать флаг -c , чтобы сделать использование команды Gzip более гибким. Например, мы можем использовать его для изменения каталога, в котором будет сохранен новый сжатый файл, и для изменения его имени.

 # Сжать файл, не удаляя его, и поместить в другой каталог
gzip -c file1 > /home/temp/compressed_file1.gz 
Как открыть файлы GZ без распаковки

Вы можете использовать zcat  9Команда 0087 в  Linux  для просмотра содержимого сжатого файла без его распаковки. Он работает со всеми утилитами сжатия, включая Gzip .

 # Просмотр содержимого сжатого файла GZIP
zcat compress_file1.gz 

Как разархивировать файлы GZ

Вы можете разархивировать файлы GZ в Linux , добавив флаг -d к команде Gzip/Gunzip . Все те же флаги, которые мы использовали выше, могут быть применены. GZ будет удален по умолчанию после распаковки, если мы не используем флаг -k . Ниже мы разархивируем файлы  GZ , которые мы сжимали в том же каталоге.

 # Разархивировать файл GZ
gzip -dv сжатый_файл1.gz
сжатый_файл1.gz: 52,8% -- заменен на сжатый_файл1 

В приведенном ниже примере следующие команды эквивалентны.

Использование команды gunzip :

 # Разархивировать файл GZ
файл gunzip.gz 

С помощью команды gzip -d  :

 # Распаковать файл GZ
gzip -d file.gz 

В приведенном ниже примере используйте следующую команду, чтобы просмотреть распакованный файл.

С помощью команды ls -1  :

 # Список по одному файлу в строке
ls -1 

Использование Tar для создания и распаковки файлов TAR GZ

Команда tar используется для создания и распаковки файлов TGZ в системе Linux. Вы можете разархивировать весь архив или извлечь только выбранные файлы или каталоги. Ниже мы узнаем, как распаковать файлы TAR.GZ из командной строки, используя разные флаги.

Как создать архив TAR.GZ

Перед созданием архива Tar , сжатого Gzip , нам нужно понять, какие файлы нам нужно включить и как мы будем их группировать. Затем мы можем указать файлы вручную или создать архив всего каталога и его подкаталогов, если они есть. В отличие от использования Gzip  для сжатия отдельных файлов, создание архива Tar , сжатого с помощью  Gzip , не приведет к удалению включенных в него файлов.

 # Создать TGZ-архив каталога и сохранить его в другую папку
tar -czvf tar_archive.tar.gz мой_каталог -C /home/temp


# Поместите выбранные файлы в архив TGZ
tar -czvf tar_files_archive.tar.gz файл1 файл2 файл3 

Используя первую команду, мы создали Gzip -сжатый Tar архив всей папки my_directory и поместили его в папку  /home/temp каталог. При использовании второй команды tar_files_archive.tar.gz будет сохранен в текущем рабочем каталоге и будет содержать только те три файла, которые мы указали для включения.

Мы использовали следующие флаги для указания TAR Поведение команды:

  • C — Создайте архив
  • Z — Сжатие с использованием режима GZIP
  • V — Verbose Mode; вы сможете увидеть подробный вывод по мере выполнения команды
  • f — укажите новое имя файла архива
  • C — указать другой целевой каталог
Как просмотреть архивные файлы

Флаг -t позволяет просматривать континенты существующего архивного файла TGZ . Кроме того, вы можете использовать каналы для поиска нужных вам файлов, если архив большой.

 # Список содержимого архива TGZ
tar -tvf tar_files_archive. tar.gz 
Как распаковать файлы TAR.GZ

Вы можете Распаковать Gzip- сжатые архивы Tar с использованием флага -x (распаковка), предоставляемого командой Tar . Опять же, вы можете указать, в какой каталог вы хотите извлечь заархивированные файлы, так как Tar поместит все содержимое файла TGZ в текущий рабочий каталог по умолчанию.

 # Распаковать файл Tar Gz и поместить несжатые файлы в другой каталог
tar -xzvf new_archive.tar.gz -C /home/temp 

Часто вам потребуется извлечь определенный файл или папку из TGZ файловый архив, который возможен с помощью команды Tar . Давайте посмотрим на пример ниже. У нас есть файл new_archive.tar.gz , и нам нужно извлечь из него файл myfile . Мы подтвердили, что он включен в файловый архив TAR.GZ .

 # Проверить есть ли нужный файл в архиве
tar -tvf new_archive.tar.gz | grep мой файл
-rw-r--r-- root/root 108 08.05.2022 05:12 home/user/myfile 

Так как файл home/user  мы заархивировали, мы не можем легко извлечь его, не восстанавливая весь каталог. Параметр strip-components позволяет нам извлекать нужные файлы или каталоги, не извлекая их родительские папки, указывая, на сколько уровней вниз по родительскому каталогу нам нужно спуститься. В нашем случае мы используем 2 в качестве аргумента. Обратите внимание, что вам необходимо указать полный путь к файлу или каталогу, который вы хотите извлечь.

 # Извлечь myfile из архива Tar Gz
tar -xzvf новый_архив.tar.gz новый/новый2/мой файл --strip-components=2
new/new2/myfile 

Теперь вы знаете все об инструментах сжатия файлов в Linux

В этой статье мы узнали, как использовать Tar и Gzip  для сжатия, архивирования и распаковки файлов TAR. GZ в Линукс .

Утилиты Tar и Gzip часто используются вместе для создания TAR.GZ f файловых архивов при достижении высокого уровня сжатия. TGZ Файлы широко используются при создании резервных копий.

Например, панели управления хостингом, такие как InterWorx и cPanel  , сохраняют резервные копии локальных веб-сайтов в виде Gzip сжатых файловых архивов Tar . Использование  Tar и Gzip также может помочь вам легче и эффективнее перемещать данные между системами за счет уменьшения их размера и объединения в один файл.

Попробуйте хостинг с Nexcess

Каждому веб-сайту нужен хороший хостинг. Как вы знаете, выбор надежного веб-хостинга имеет решающее значение для скорости и безопасности веб-сайта.

Получите высокопроизводительный хостинг от Nexcess.

This entry was posted in Популярное