Сжатие — это очень часто выполняемая пользователями операция для экономии места на диске, а также сокращения времени и полосы пропускания при одновременном выполнении. передача больших объемов данных по сети с помощью gzip полезность.
gzip означает почтовый индекс GNU и это очень популярная утилита сжатия и распаковки. Одной из основных причин его популярности является высокая степень сжатия и скорость, что означает, что сжатые данные остаются неизменными после распаковки.
gzip команда использует алгоритм deflate, который представляет собой сжатие данных без потерь, создающее меньший размер файла, чтобы сделать передачу файлов намного быстрее по сравнению с другими инструменты сжатия.
В этом руководстве мы собираемся обсудить gzip использование команд с примерами в Linux.
Оглавление
Синтаксис команды gzip
Как и любой другая команда Linuxсинтаксис команды gzip разделен на две части ПАРАМЕТРЫ и ФАЙЛЫ.
$ gzip [OPTIONS]... [FILES]...
В приведенном выше синтаксисе ПАРАМЕТРЫ используются для изменения поведения команды, тогда как ФАЙЛЫ представлять входные файлы.
1. Создайте файл Gzip в Linux
Одно из самых распространенных применений gzip Команда предназначена для сжатия большого файла. Очень часто можно увидеть, что большие файлы ISO или пакеты tar сжимаются для экономии места на диске.
Чтобы сжать один файл, нам просто нужно передать имя файла команде gzip. Чтобы понять это, давайте используем следующую команду для сжатия файла ISO:
$ gzip alma-linux.iso
Теперь воспользуемся лс команда чтобы убедиться, что файл был сжат:
$ ls -l

В приведенном выше выводе мы видим новый сжатый файл с именем alma-linux.iso.gz. Мы также можем заметить, что по умолчанию команда gzip добавляет .gz
расширение сжатого файла.
2. Создайте Gzip и сохраните исходный файл
В предыдущем примере мы видели, как легко сжать файл. Однако, если внимательно присмотреться, то можно заметить, что gzip Команда удаляет исходный файл после его сжатия.
Однако иногда мы также хотим сохранить исходный файл. В таких случаях мы можем использовать -k
вариант как показано.
$ gzip -k alma-linux.iso $ ls -l

В приведенном выше выводе мы видим, что исходный файл не поврежден даже после сжатия.
3. Просмотр содержимого файла .gz
Для просмотра содержимого сжатого .gz
файл, используйте команда zcat — что позволяет просматривать содержимое сжатого файла без распаковки.
$ zcat alma-linux.iso
4. Просмотр информации о файле .gz
Иногда нам нужно отобразить более подробную информацию о сжатом файле. В таком случае мы можем использовать -l
возможность перечислить следующие поля:
- сжатый размер – представляет размер сжатого файла в байтах.
- несжатый размер – представляет собой размер несжатого файла в байтах.
- соотношение – это степень сжатия.
- несжатое_имя – представляет собой имя несжатого файла.
Чтобы понять это, давайте выполним следующую команду:
$ gzip -l alma-linux.iso.gz

5. Перезаписать файл Gzip без подтверждения
По умолчанию gzip Команда работает в интерактивном режиме, если сжатый файл с таким именем уже существует. Чтобы понять это поведение по умолчанию, давайте выполним ту же команду из предыдущего примера:
$ gzip -k alma-linux.iso

Здесь мы можем видеть, что gzip Команда ожидает ввода пользователя. Теперь мы можем использовать 'y'
перезаписать файл или 'n'
чтобы прервать операцию.
Эта интерактивная операция безопасна и позволяет избежать ошибочной перезаписи файлов. Однако это подходит не каждый раз. Например, если мы выполняем gzip команду из скрипта, тогда скрипт будет бесконечно ждать ввода пользователя. В таких случаях мы можем использовать -f
опция, которая принудительно перезаписывает файлы.
Теперь давайте выполним ту же команду с -f
вариант:
$ gzip -f -k alma-linux.iso

Здесь мы видим, что теперь команда gzip работает неинтерактивно.
6. Сжать несколько файлов с помощью Gzip
До сих пор мы видели, как сжать один файл. Аналогичным образом мы можем использовать gzip Команда для сжатия нескольких файлов одновременно.
Итак, во-первых, давайте создадим несколько копий файла, используя следующие ср команда:
$ cp alma-linux.iso alma-linux-1.iso $ cp alma-linux.iso alma-linux-2.iso $ cp alma-linux.iso alma-linux-3.iso
Затем давайте сожмите три файла, используя следующую команду:
$ gzip alma-linux-1.iso alma-linux-2.iso alma-linux-3.iso $ ls -l

7. Сжать все файлы в каталоге
В предыдущем примере мы видели, как сжать несколько файлов. Аналогичным образом мы также можем сжать все файлы из каталога.
Чтобы понять это, сначала давайте создать новый каталог и добавляем в него несколько файлов:
$ mkdir dir-1 $ touch dir-1/file-1.txt dir-1/file-2.txt dir-1/file-3.txt
Теперь воспользуемся -r
возможность сжатия всех файлов из дир-1 каталог:
$ gzip -r dir-1/ $ ls -l dir-1/

В приведенном выше примере -r
option обходит каталог рекурсивным образом.
8. Распакуйте файл Gzip в Linux
gzip Команда позволяет нам распаковать файл с помощью -d
вариант как показано.
$ gzip -d alma-linux.iso.gz $ ls -l

9. Сжать файл Tar в Gzip
В предыдущих двух примерах мы видели, как сжать несколько файлов с помощью одной команды. Однако мы также можем заметить, что gzip команда не сжимает эти файлы в один файл. В таких случаях, во-первых, мы можем создать пакет tar а затем сжать его с помощью gzip команда.
Итак, во-первых, давайте создадим пакет tar с несколькими файлами в нем:
$ tar cvf sample.tar alma-linux-1.iso alma-linux-2.iso

Теперь давайте сожмем этот пакет tar с помощью следующей команды:
$ gzip sample.tar $ ls -l

10. Ускорение сжатия gzip
До сих пор мы использовали очень маленькие файлы для демонстрации использования команды gzip. Однако в реальных сценариях данные, которые необходимо сжать, могут быть очень большими.
В таких случаях мы можем использовать --fast
возможность уменьшить время сжатия.
$ gzip --fast alma-linux.iso
Важно отметить, что, --fast
Опция отдает предпочтение скорости сжатия перед коэффициентом.
11. Ускорение сжатия Gzip
Аналогичным образом мы можем использовать --best
возможность улучшить степень сжатия. Чтобы понять это, давайте выполним следующую команду:
$ gzip --best alma-linux.iso
Здесь мы должны отметить, что --best
Опция отдает предпочтение степени сжатия, а не скорости.
12. Установите уровень сжатия Gzip
Мы можем использовать целочисленный аргумент с gzip команда для регулирования скорости сжатия. Допустимое значение в диапазоне от 1 до 9. Значение 1 представляет быстрое сжатие, тогда как значение 9 представляет самое медленное сжатие.
Например, следующая команда использует 2 в качестве аргумента для повышения скорости сжатия:
$ gzip -2 alma-linux.iso
Важно отметить, что уровень сжатия по умолчанию в gzip равен -6. Он предпочитает высокое сжатие в ущерб скорости.
13. Изменить суффикс расширения файла Gzip
По умолчанию gzip команда использует .gz
суффикс после сжатия файла. Однако мы можем переопределить это поведение по умолчанию, используя --suffix
вариант.
Например, мы можем использовать приведенную ниже команду для использования gnuzip как суффикс:
$ gzip --suffix .gnuzip alma-linux.iso $ ls -l

В приведенном выше примере мы видим, что сжатый файл имеет .gnuzip
расширение.
Заключение
В этом практическом руководстве мы обсудили некоторые распространенные примеры gzip команда в Linux для более быстрого сжатия и распаковки файлов.
Знаете ли вы какой-либо другой лучший пример команды gzip в Linux? Сообщите нам свое мнение в комментариях ниже.