Gzip: Difference between revisions
Created page with "Pavel Golovan" |
|||
| (19 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
'''''Gzip''''' (сокращение от '''G'''NU '''Zip''') – это утилита, которая реализует сжатие (компрессию) и восстановление (декомпрессию) файлов. Разработана Жан-Лу Гайи и Марком Адлером в 1992 году. Сжатые при помощи утилиты файлы имеют расширение – <code>.gz</code>. |
|||
Pavel Golovan |
|||
==Обзор== |
|||
Gzip активно используется в UNIX-системах и в большинстве установлена по умолчанию. Утилита обеспечивает высокую степень сжатия без потерь, а также позволяет производить сжатие и восстановление данных в режиме реального времени. |
|||
Важной особенностью Gzip является то, что утилита способна производить сжатие и восстановление только одного файла, т.е. сжатие множества файлов в один архив невозможно. Для сжатия множества файлов их предварительно архивируют (объединяют) в один файл при помощи утилиты tar. Полученный в результате сжатия файл (архив) будет иметь двойное расширение - <code>.tar.gz</code> или сокращённое <code>.tgz</code>. |
|||
В операционных системах Windows и macOs сжатые при помощи Gzip файлы можно открыть в любом поддерживающем данный формат архиваторе, например, WinRAR или 7-Zip. |
|||
==Пример синтаксиса== |
|||
<code>gzip [ПАРАМЕТР]… [ФАЙЛ]…</code> |
|||
Полный синтаксис утилиты Gzip (все параметры и их описания) можно посмотреть, используя команду <code>gzip -h</code>. |
|||
[[File:gzip -h.png]] |
|||
==Примеры использования== |
|||
===Сжатие файла=== |
|||
Чтобы сжать файл, достаточно просто ввести команду <code>gzip</code> вместе с именем файла: |
|||
<code>gzip <файл></code> |
|||
[[File:compress.png]] |
|||
В данном примере было произведено сжатие файла «example.txt». Исходный файл был удалён. Вместо него Gzip создал файл «example.txt.gz». Размер уменьшился с 3603 байт до 2045 байт. |
|||
По умолчанию Gzip сохраняет в сжатом файле все свойства оригинального файла (метки времени, сведения о владельце и т.д.). |
|||
===Сжатие файла с сохранением исходного=== |
|||
Для сохранения исходного файла, необходимо использовать параметр <code>-k</code>: |
|||
<code>gzip -k <файл></code> |
|||
[[File:keep.png]] |
|||
===Подробный вывод=== |
|||
Для того, чтобы увидеть имена исходного и конечного файлов, а также процент сжатия, можно воспользоваться параметром <code>-v</code>: |
|||
<code>gzip -v <файл></code> |
|||
[[File:info.png]] |
|||
===Одновременное сжатие нескольких файлов=== |
|||
Gzip позволяет сжимать несколько файлов одновременно: |
|||
<code>gzip <файл_1> <файл_2> <файл_3></code> |
|||
Следующий пример демонстрирует одновременное сжатие 3 файлов: «example1.txt», «example2.txt», «example3.txt». |
|||
[[File:multi_compress.png]] |
|||
===Одновременное сжатие всех файлов в каталоге=== |
|||
Чтобы сжать все файлы в заданном каталоге, необходимо воспользоваться параметром <code>-r</code>: |
|||
<code>gzip -r <каталог></code> |
|||
[[File:compress_all.png]] |
|||
===Изменение уровня сжатия=== |
|||
Gzip позволяет пользователям контролировать уровень сжатия файла, от 1 до 9, где <code>-1</code> или <code>--fast</code> – это самый быстрый, но наименее эффективный способ сжатия, а <code>-9</code> или <code>--best</code> – это самый медленный, но наиболее эффективный способ сжатия. По умолчанию Gzip использует уровень <code>-6</code>. |
|||
<code>gzip -6 <файл></code> |
|||
В данном примере демонстрируются разные уровни сжатия файла «example.txt»: |
|||
[[File:levels.png]] |
|||
Уровень <code>-1</code> действительно уменьшил размер файла «example.txt» всего лишь с 3603 до 2090 байт, в то время как уровни <code>-6</code> и <code>-9</code> смогли сжать файл сильнее, оба до 2045 байт. Отсутствие различия между <code>-6</code> и <code>-9</code> уровнями объясняется небольшим весом исходного файла. |
|||
===Восстановление файла=== |
|||
Чтобы восстановить файл, необходимо воспользоваться параметром <code>-d</code> или командой <code>gunzip</code>: |
|||
<code>gzip -d <файл.gz></code> |
|||
или |
|||
<code>gunzip <файл.gz></code> |
|||
{|class="wikitable" cellspacing="3" cellpadding="0" style="margin:auto; text-align:left;" |
|||
|- |
|||
![[File:decompress-d.png|768x576px]] |
|||
![[File:decompress-gunzip.png|768x576px]] |
|||
|- |
|||
|} |
|||
===Восстановление файла с сохранением сжатого=== |
|||
Параметр <code>-k</code> позволяет сохранить как исходный файл при сжатии, так и сжатый файл при восстановлении: |
|||
<code>gzip -dk <файл.gz></code> |
|||
[[File:keep-d.png]] |
|||
===Одновременное восстановление нескольких файлов=== |
|||
Для восстановления нескольких файлов одновременно необходимо указать имена файлов после команды <code>gzip</code>: |
|||
<code>gzip -d <файл_1.gz> <файл_2.gz> <файл_3.gz></code> |
|||
[[File:multi_decompress.png]] |
|||
===Одновременное восстановление всех файлов в каталоге=== |
|||
При использовании с параметрами <code>-d</code> и <code>-r</code>, Gzip восстанавливает все файлы в заданном каталоге: |
|||
<code>gzip -dr <каталог></code> |
|||
[[File:decompress_all.png]] |
|||
===Отображение свойств сжатого файла=== |
|||
При использовании с параметром <code>-l</code>, Gzip предоставляет информацию о сжатом файле: |
|||
<code>gzip -l <файл.gz></code> |
|||
Пользователь получает имя исходного файла, размер сжатого и исходного файлов, а также процент сжатия: |
|||
[[File:info_compressed.png]] |
|||
Для получения ещё большего количества информации можно добавить параметр <code>-v</code>: |
|||
[[File:more_info_compressed.png]] |
|||
==Полезные ссылки== |
|||
*[https://www.gnu.org/software/gzip/ Домашняя страница Gzip] |
|||
*[https://www.gnu.org/software/gzip/manual/gzip.html Документация Gzip] |
|||
Latest revision as of 21:08, 12 December 2022
Gzip (сокращение от GNU Zip) – это утилита, которая реализует сжатие (компрессию) и восстановление (декомпрессию) файлов. Разработана Жан-Лу Гайи и Марком Адлером в 1992 году. Сжатые при помощи утилиты файлы имеют расширение – .gz.
Обзор
Gzip активно используется в UNIX-системах и в большинстве установлена по умолчанию. Утилита обеспечивает высокую степень сжатия без потерь, а также позволяет производить сжатие и восстановление данных в режиме реального времени.
Важной особенностью Gzip является то, что утилита способна производить сжатие и восстановление только одного файла, т.е. сжатие множества файлов в один архив невозможно. Для сжатия множества файлов их предварительно архивируют (объединяют) в один файл при помощи утилиты tar. Полученный в результате сжатия файл (архив) будет иметь двойное расширение - .tar.gz или сокращённое .tgz.
В операционных системах Windows и macOs сжатые при помощи Gzip файлы можно открыть в любом поддерживающем данный формат архиваторе, например, WinRAR или 7-Zip.
Пример синтаксиса
gzip [ПАРАМЕТР]… [ФАЙЛ]…
Полный синтаксис утилиты Gzip (все параметры и их описания) можно посмотреть, используя команду gzip -h.
Примеры использования
Сжатие файла
Чтобы сжать файл, достаточно просто ввести команду gzip вместе с именем файла:
gzip <файл>
В данном примере было произведено сжатие файла «example.txt». Исходный файл был удалён. Вместо него Gzip создал файл «example.txt.gz». Размер уменьшился с 3603 байт до 2045 байт.
По умолчанию Gzip сохраняет в сжатом файле все свойства оригинального файла (метки времени, сведения о владельце и т.д.).
Сжатие файла с сохранением исходного
Для сохранения исходного файла, необходимо использовать параметр -k:
gzip -k <файл>
Подробный вывод
Для того, чтобы увидеть имена исходного и конечного файлов, а также процент сжатия, можно воспользоваться параметром -v:
gzip -v <файл>
Одновременное сжатие нескольких файлов
Gzip позволяет сжимать несколько файлов одновременно:
gzip <файл_1> <файл_2> <файл_3>
Следующий пример демонстрирует одновременное сжатие 3 файлов: «example1.txt», «example2.txt», «example3.txt».
Одновременное сжатие всех файлов в каталоге
Чтобы сжать все файлы в заданном каталоге, необходимо воспользоваться параметром -r:
gzip -r <каталог>
Изменение уровня сжатия
Gzip позволяет пользователям контролировать уровень сжатия файла, от 1 до 9, где -1 или --fast – это самый быстрый, но наименее эффективный способ сжатия, а -9 или --best – это самый медленный, но наиболее эффективный способ сжатия. По умолчанию Gzip использует уровень -6.
gzip -6 <файл>
В данном примере демонстрируются разные уровни сжатия файла «example.txt»:
Уровень -1 действительно уменьшил размер файла «example.txt» всего лишь с 3603 до 2090 байт, в то время как уровни -6 и -9 смогли сжать файл сильнее, оба до 2045 байт. Отсутствие различия между -6 и -9 уровнями объясняется небольшим весом исходного файла.
Восстановление файла
Чтобы восстановить файл, необходимо воспользоваться параметром -d или командой gunzip:
gzip -d <файл.gz>
или
gunzip <файл.gz>
Восстановление файла с сохранением сжатого
Параметр -k позволяет сохранить как исходный файл при сжатии, так и сжатый файл при восстановлении:
gzip -dk <файл.gz>
Одновременное восстановление нескольких файлов
Для восстановления нескольких файлов одновременно необходимо указать имена файлов после команды gzip:
gzip -d <файл_1.gz> <файл_2.gz> <файл_3.gz>
Одновременное восстановление всех файлов в каталоге
При использовании с параметрами -d и -r, Gzip восстанавливает все файлы в заданном каталоге:
gzip -dr <каталог>
Отображение свойств сжатого файла
При использовании с параметром -l, Gzip предоставляет информацию о сжатом файле:
gzip -l <файл.gz>
Пользователь получает имя исходного файла, размер сжатого и исходного файлов, а также процент сжатия:
Для получения ещё большего количества информации можно добавить параметр -v:











