Все секреты сжатия в GNU / Linux

Компрессионные трубы

Возвращаемся к обычной проблеме, которая становится преимуществом для многих. продвинутые пользователи GNU / Linux и это большое количество доступных альтернатив или возможностей. Для самых неопытных людей это может стать проблемой, когда они не знают, какой из них выбрать, но, как я уже сказал, наличие большего количества возможностей или гибкости никогда не бывает плохим, как раз наоборот. В этом случае мы поговорим о алгоритмы и процедуры сжатия и декомпрессии которые существуют на нашей любимой платформе, чтобы вы могли видеть их по-другому, а не как большой беспорядок, не зная, какой вариант лучше в вашем случае ...

Правда в том, что существуют не только инструменты, используемые в качестве tar, с помощью которых мы можем создавать пакеты, в которые также можно добавить некоторый тип сжатия, как мы привыкли видеть в знаменитые тарболы о которых мы уже говорили в LxA во многих случаях. Мы также найдем варианты таких тривиальных и часто используемых инструментов, как grep, для поиска внутри сжатых файлов, таких как bzfgrep, или даже других, таких как less и more, которые также имеют свои варианты для сжатых файлов, таких как bzless и bzmore. Чтобы увидеть их все, нам просто нужно взглянуть на вывод следующей команды:

apropos compress

Алгоритмы и тесты:

Среди всего алгоритмы Сжатие без потерь, доступное в Linux для сжатия и распаковки данных, у нас есть много вариантов. Чтобы получить подтверждение того, сколько времени требуется на сжатие с помощью того или иного алгоритма сжатия или сколько времени требуется на его распаковку, я предлагаю вам провести несколько тестов самостоятельно. Для этого вы можете использовать команду time, которая даст вам время, затраченное на процесс сжатия и распаковки. Например, если вы собираетесь использовать инструмент zip для сжатия файла с именем test:

time zip prueba.zip prueba

Это отбросит потраченное время, но если вы хотите увидеть размер сгенерированного файлаВы можете попробовать сжать один и тот же файл с помощью разных алгоритмов и инструментов сжатия, и как только у вас будут все сжатые файлы в каталоге с простой командой для вывода списка, проверьте размер каждого из них:

ls -l

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

xzdiff [opciones] fichero1 fichero2

lzdiff [opciones] fichero 1 fichero2

Если вы хотите увидеть графики размера и скорости алгоритмов, вы можете посетить эта другая ссылка.

Инструменты сжатия:

О доступные инструменты у нас их много, некоторые с графическим интерфейсом для новичков, и нам просто придется иметь дело с простым и интуитивно понятным графическим интерфейсом для выполнения сжатия и распаковки, например PeaZip, или 7zip, ... и т. д. В частности, первый способен работать с различными форматами, а именно с более чем 180 из них. Но если вы один из тех, кто до сих пор любит работать с терминалом, то у вас будет большое количество инструментов, которые вы наверняка знаете:

  • застегнуть и распаковать: это хороший вариант, если вам нужны файлы, переносимые в другие операционные системы, поскольку вы найдете инструменты для работы с этими файлами в системах Microsoft Windows, а также в macOS и других. Например, чтобы сжать файл или каталог с именем test, а затем распаковать его:
zip prueba.zip prueba

unzip prueba.zip

  • GZIP: Лучше всего, если вам нужна простая переносимость между операционными системами Unix / Linux. Может быть, степень сжатия почти такая же, как у zip, может немного лучше, но вы не найдете большой разницы в размере файла в zip или gzip. Для сжатия и распаковки с помощью этого инструмента мы можем использовать две опции в случае распаковки, и это опция -do, напрямую используя псевдоним gunzip:
gzip prueba

gzip -d prueba.gz

gunzip prueba.gz

  • bzip2: Как и предыдущий, этот алгоритм широко используется в операционных системах Unix / Linux, хотя он занимает немного больше времени в процессах сжатия и распаковки, чем в случае с gzip. В этом случае задержка не приведет к более высокой степени сжатия, как в случае с xz, поскольку файлы, сжатые с помощью bzip2, будут занимать немного больше, чем файлы gzip. Вот почему рекомендуется избегать использования bzip2 и вместо этого выбирать xz или gzip. Хотя все будет немного зависеть от типа файла, который вы пытаетесь сжать ... Например:
bzip2 prueba

bzip2 -d prueba.bz2

  • xz: Это предпочтительный формат для файлов большого размера, так как он обеспечивает лучшую степень сжатия, но также верно и то, что для завершения сжатия или распаковки потребуется больше времени. Он новее, чем предыдущие, поэтому вы можете столкнуться с более примитивными дистрибутивами или старыми системами Unix, в которых нет инструментов для этого. Примеры:
xz prueba

xz -d prueba.xz

  • unrar и rar: Мы также можем работать с форматами RAR в Linux благодаря этим инструментам, хотя это не так популярно в случае систем * nix, как предыдущие ... В этом случае мы можем выбрать:
rar a prueba.rar prueba

unrar e prueba.rar

  • сжимать и распаковывать: и хотя использование компресса теряется и не так популярно, как предыдущие, я также не хотел бы упускать из виду этот инструмент. Он используется для сжатия файлов с расширением .Z благодаря модифицированному алгоритму Лемпеля-Зива. Например:
compress -v prueba

uncompress prueba.Z

Если вы хотите работать напрямую с инструмент дегтяВы также можете одновременно упаковывать и сжимать файлы, а также распаковывать и распаковывать их. В этом случае мы можем передать параметры типа используемого алгоритма непосредственно в tar. Но прежде всего вы должны знать, что с опцией c мы создаем пакет, а с опцией x извлекаем его. Например:

tar czvf prueba.tar.gz prueba

tar xzvf prueba.tar.gz

Как видите, мы использовали варианты zvf, которые должны указать тип алгоритма сжатия z (в данном случае gzip), v для подробного режима, который дает информацию о том, что он делает, и f, чтобы указать файл, с которым нужно работать ... Хорошо, если мы изменим что z другой буквой, соответствующей другому типу алгоритма, мы можем изменить тип сжатия, применяемого к тарболу:

вариант алгоритм Расширение
z GZIP .tar.gz
j bzip2 .tar.bz2
J xz .tar.xz
Lzip застежка-молния .tar.lz
LZMA LZMA .tar.lzma

* Конечно, у всех предыдущих команд есть интересные опции, которые я предлагаю вам открыть с помощью man, некоторые очень необходимые, такие как рекурсия и т. Д.

Не забудьте оставьте свои комментарии...


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Хавьер Мартинес Эченике сказал

    Я, в частности, использую 7zip

  2.   Marcelo сказал

    Вы пропустили 7zip. Очень хороший вариант и БЕСПЛАТНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ.

  3.   Умберто сказал

    Отличная информация, хотя я бы начал с того, что его также можно сжимать и распаковывать графически без каких-либо проблем, чтобы вы не видели дежурного «шершня», который говорит, что GNU / Linux очень сложен и все нужно делать на консоль. НЕТ, ДРУГОЙ ВАРИАНТ.