Post Format

Dtrx — умная распаковка архивов (tar, zip, cpio, rpm, deb, rar).

Если много работать с различными архивами в Linux, то приходится использовать множество различных утилит и ключей для распаковки этих архивов. Для комфортной распаковки будем использовать утилиту Dtrx. Dtrx расшифровывается как Do The Right Extraction, т.е. «делай правильную распаковку». Команда dtrx является заменой tar -zxvf или tar -xjf, и представляет собой единую команду для извлечения архивов различных форматов, включая tar, zip, rpm, deb, gem, 7z, cpio, rar и множества других.
По умолчанию, программа извлекает содержимое в отдельную директорию, с таким же именем как и у архива, и обеспечивает права на чтение и запись для пользователя. Так же, в числе прочего, поддерживается рекурсивная распаковка — можно распаковать архивы найденные в распаковываемом архиве. Так же утилита будет очень полезна, если надо распаковать сразу много архивов.

Установка на Debian/Ubuntu/Linux Mint

Установка на RHEL/CentOS/Fedora

На RedHat подобных системах программа dtrx не доступна в репозиториях по умолчанию. Нужно скачать и установить скрипт в систему, используя следующие команды, от учетной записи root.

Синтаксис

Опции

-r, -recursive — с этой опцией dtrx будет искать архивы внутри архива и извлекать их.
—one, —one-entry — если архив содержит только один файл или только одну папку с именем не совпадающим с именем архива, то dtrx у вас спросит, что с ним делать. При помощи этой опции вы можете заранее задать действия архиватора. Возможные параметры опции:

  • inside — распаковка файла или папки в каталог с другим именем. Значение по умолчанию.
  • rename — распаковка в текущую папку, а затем переименовывание распаковывание файла/каталога.
  • here— распаковка файла/папки в текущую директорию.

-o, —overwrite — обычно, dtrx не извлекает файлы в папку, которая уже была создана, а подбирает альтернативное имя для директории. Если эта опция указана, то dtrx не будет использовать имя каталога по умолчанию не смотря ни на что.
-f, —flat — извлечение всего содержимого в одну папку. Эта опция будет полезна, если у вас есть несколько архивов, которые необходимо распаковать в одну папку. При включение этой опции созданные файлы могут быть перезаписаны.
-l , -t , —list , —table — не распаковывать архив, а только вывести его содержимое.
-m , —metadata — извлекает мета данные из .deb и .gem архивов вместо их содержимого.
-n, —noninteractive — обычно dtrx выдает запросы, при возникновении каких то ситуаций. например, как обрабатывать архив, только с одним файлом или каталогом. при использовании этой опции, dtrx использует настройки по умолчанию.

Пример использования