Команда Gzip для сжатия и архивации файлов в Linux

Gzip Command in Linux

27 Марта 2019 | Терминал

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

Команда Gzip для сжатия и архивации файлов в Linux

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

Gzip также ссылается на .gz формат файла и 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 указывает самую низкую скорость сжатия с максимальной степенью сжатия. Уровень сжатия по умолчанию - -6.

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

gzip -9 filename   

Сжатие - это интенсивная загрузка процессора, чем выше уровень сжатия, тем дольше длится процесс.

Используя стандартный ввод

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

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 .



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