Команда gzip в Linux

Утилита gzip — это не только один из самых популярных инструментов для сжатия файлов, но и мощный инструмент с множеством продвинутых возможностей.

Сжатие с оптимизацией: контроль уровня сжатия

У gzip есть возможность указать уровень сжатия, от 1 до 9:

  • 1 или --fast: максимальная скорость с минимальной степенью сжатия.
  • 9 или --best: максимальная степень сжатия, но с более высокой нагрузкой на процессор.

Чтобы сжать файл с максимальной степенью сжатия, выполните:

gzip -9 имя_файла

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

mysqldump имя_базы_данных | gzip > backup.sql.gz

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

gzip -l имя_файла.gz

gzip -lv имя_файла.gz

Рекурсивное сжатие/распаковка файлов

gzip -r имя_каталога

Эта команда пройдется по всей структуре каталога и сожмет каждый файл.
Для распаковки всех файлов в каталоге рекурсивно, используйте:

gzip -dr имя_каталога

Работа с архивами tar.gz

Часто gzip используется вместе с командой tar, чтобы сжать архивы. Например:

tar -czf архив.tar.gz имя_каталога

Для распаковки архива:

tar -xzf архив.tar.gz