Gzip: Difference between revisions

From TÜ Narva Kolledži Wiki
Jump to navigation Jump to search
Content deleted Content added
Golovan (talk | contribs)
No edit summary
Golovan (talk | contribs)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''''Gzip''''' (сокращение от '''G'''NU '''Zip''') – это утилита, которая реализует сжатие (компрессию) и восстановление (декомпрессию) файлов. Разработана Жан-Лу Гайи и Марком Адлером в 1992 году. Сжатые с помощью утилиты файлы имеют расширение – <code>.gz</code>.
'''''Gzip''''' (сокращение от '''G'''NU '''Zip''') – это утилита, которая реализует сжатие (компрессию) и восстановление (декомпрессию) файлов. Разработана Жан-Лу Гайи и Марком Адлером в 1992 году. Сжатые при помощи утилиты файлы имеют расширение – <code>.gz</code>.


==Обзор==
==Обзор==


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


Важной особенностью Gzip является то, что утилита способна производить сжатие и восстановление только одного файла, т.е. сжатие множества файлов в один архив невозможно. Для сжатия множества файлов их предварительно архивируют (объединяют) в один файл при помощи утилиты tar. Полученный в результате сжатия файл (архив) будет иметь двойное расширение - .tar.gz или сокращённое .tgz .
Важной особенностью Gzip является то, что утилита способна производить сжатие и восстановление только одного файла, т.е. сжатие множества файлов в один архив невозможно. Для сжатия множества файлов их предварительно архивируют (объединяют) в один файл при помощи утилиты tar. Полученный в результате сжатия файл (архив) будет иметь двойное расширение - <code>.tar.gz</code> или сокращённое <code>.tgz</code>.


В операционных системах Windows и macOs сжатые при помощи Gzip файлы можно открыть в любом поддерживающем данный формат архиваторе, например, WinRAR или 7-Zip.
В операционных системах Windows и macOs сжатые при помощи Gzip файлы можно открыть в любом поддерживающем данный формат архиваторе, например, WinRAR или 7-Zip.
Line 22: Line 22:


Чтобы сжать файл, достаточно просто ввести команду <code>gzip</code> вместе с именем файла:
Чтобы сжать файл, достаточно просто ввести команду <code>gzip</code> вместе с именем файла:

<code>gzip <файл></code>


[[File:compress.png]]
[[File:compress.png]]
Line 28: Line 30:


По умолчанию Gzip сохраняет в сжатом файле все свойства оригинального файла (метки времени, сведения о владельце и т.д.).
По умолчанию 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:

Полезные ссылки