Команда Gzip в Linux

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

Gzip также относится к .gz файлов .gz и утилите gzip которая используется для сжатия и распаковки файлов.

В этом руководстве мы покажем вам, как использовать команду gzip .

Синтаксис команды gzip

Общий синтаксис команды gzip следующий:

gzip [OPTION]... [FILE]...

Gzip сжимает только отдельные файлы и создает сжатый файл для каждого заданного файла. По соглашению, имя файла, сжатого с помощью Gzip, должно заканчиваться на .gz или .z .

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

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

gzip может сжимать только обычные файлы. Символьные ссылки игнорируются.

Сжатие файлов с помощью gzip

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

gzip filename

gzip создаст файл filename.gz и удалит исходный файл.

По умолчанию gzip сохраняет в сжатом файле метку времени, режим, владельца и имя исходного файла.

Сохраните исходный файл

Если вы хотите сохранить исходный (исходный) файл, используйте параметр -k :

gzip -k filename

Другой вариант сохранить исходный файл — использовать параметр -c который сообщает gzip о необходимости записи в стандартный вывод и перенаправления вывода в файл:

gzip -c filename > filename.gz

Подробный вывод

Используйте параметр -v если вы хотите увидеть процентное сокращение и имена обрабатываемых файлов:

gzip -v filename   
filename:	  7.5% -- replaced with filename.gz

Сжать несколько файлов

Вы также можете передать несколько файлов в качестве аргументов команде. Например, чтобы сжать файлы с именами file1 , file2 , file3 , вы должны выполнить следующую команду:

gzip file1 file2 file3

Приведенная выше команда создаст три сжатых файла: file1.gz , file2.gz , file3.gz .

Сжать все файлы в каталоге

Чтобы сжать все файлы в данном каталоге, используйте параметр -r :

gzip -r directory

gzip будет рекурсивно проходить по всей структуре каталогов и сжимать все файлы в каталоге и его подкаталогах.

Измените уровень сжатия

gzip позволяет указать диапазон уровней сжатия от 1 до 9. -1 или --fast означает самую высокую скорость сжатия с минимальной степенью сжатия, -9 или --best указывает на самую --best скорость сжатия с максимальной степенью сжатия. Уровень сжатия по умолчанию -6 .

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

gzip -9 filename

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

Стандартный ввод

Чтобы создать файл .gz из стандартного .gz , перенаправьте вывод команды в gzip . Например, чтобы создать резервную копию базы данных MySQL в формате Gzip, вы должны выполнить:

mysqldump database_name | gzip -c > database_name.sql.gz

Вывод команды mysqldump будет вводиться для gzip .

Распаковка файлов с помощью gzip

Чтобы распаковать файл .gz , используйте параметр -d :

gzip -d filename.gz

Другая команда, которую вы можете использовать для распаковки Gzip-файла, — это gunzip . Эта команда в основном является псевдонимом для gzip -d :

gunzip filename.gz

Возможно, вам будет проще запомнить gunzip чем gzip -d .

Сохраните сжатый файл

Как и при сжатии файла, параметр -k сообщает gzip нужно сохранить входной файл, в данном случае это сжатый файл:

gzip -dk filename.gz

Распаковать несколько файлов

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

gzip -d file1.gz file2.gz file3.gz

Распаковать все файлы в каталоге

При использовании с параметрами -d и -r gzip рекурсивно распаковывает все файлы в указанном каталоге:

gzip -dr directory

Список содержимого сжатого файла

При использовании с параметром -l gzip показывает статистику по данным сжатым файлам:

gzip -l filename

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

         compressed        uncompressed  ratio uncompressed_name
                130                 107   7.5% filename

Чтобы получить дополнительную информацию, добавьте параметр -v :

gzip -lv filename
method  crc     date  time           compressed        uncompressed  ratio uncompressed_name
defla a9b9e776 Sep  3 21:20                 130                 107   7.5% filename

Выводы

С помощью Gzip вы можете уменьшить размер данного файла. Команда gzip позволяет сжимать и распаковывать файлы.

Для получения дополнительной информации о команде gzip обратитесь к странице документации Gnu gzip .

Если у вас есть вопросы, оставьте комментарий ниже.

Оставьте комментарий