Rar doublecmd не работает

Содержание
  1. Double Commander
  2. Не работает архиватор rar.
  3. Не работает архиватор rar.
  4. Re: Не работает архиватор rar.
  5. Re: Не работает архиватор rar.
  6. Re: Не работает архиватор rar.
  7. Re: Не работает архиватор rar.
  8. Re: Не работает архиватор rar.
  9. Re: Не работает архиватор rar.
  10. Re: Не работает архиватор rar.
  11. Re: Не работает архиватор rar.
  12. Луколовка
  13. понедельник, 13 января 2020 г.
  14. Настройка архиватора RAR в Double Commander под Ubuntu Linux
  15. Rar doublecmd не работает
  16. Установка Double Commander.
  17. Устраняем ошибку при открытии rar файлов в Double Commander
  18. 2.7. Внешние архиваторы
  19. Содержание
  20. 1. Работа со сжатыми файлами
  21. 2. Средства для работы со сжатыми файлами
  22. 3. Работа с плагинами
  23. 4. Работа с внешними архиваторами
  24. 5. Настройка интеграции внешних архиваторов
  25. 5.1. Добавление нового внешнего архиватора
  26. 5.2. Переменные для команд внешнего архиватора
  27. 5.3. Модификаторы переменных
  28. 5.4. Настройка действия «Список»
  29. 5.5. Получение списка содержимого
  30. 5.5.1. Разграничение области для анализа
  31. 5.5.2. Разбор списка содержимого
  32. 5.5.3. Стандартный синтаксис разбора вывода
  33. 5.5.4. Пример со стандартным синтаксисом
  34. 5.5.5. Расширенный синтаксис разбора вывода
  35. 5.5.6. Пример с расширенным синтаксисом
  36. 5.6. Настройка действия «Извлечь»
  37. 5.7. Настройка действия «Добавить»
  38. 5.8. Настройка действия «Удалить»
  39. 5.9. Настройка действия «Проверить»
  40. 5.10. Настройка действия «Распаковать не учитывая пути»
  41. 5.11. Настройка действия «Создать самораспаковывающийся архив»
  42. 5.12. Использование ID

Double Commander

Не работает архиватор rar.

Не работает архиватор rar.

#1 Post by stiv » Wed Dec 28, 2016 11:12 am

Re: Не работает архиватор rar.

#2 Post by Alexx2000 » Fri Dec 30, 2016 9:41 pm

Re: Не работает архиватор rar.

#3 Post by stiv » Fri Jan 06, 2017 3:21 pm

Re: Не работает архиватор rar.

#4 Post by BluePegas » Sat Jan 07, 2017 11:07 pm

В отличии от «stiv»-а архив создаётся.

Но при создании архива rar (Alt+F5) выходит окно «Упаковка архива», где строка «Сохранять пути» затемнена и нельзя сбросить её галочку.
При нажатии клавиши «Ok» архив создаётся в соседнем окне. Но если в строке «Имя архива» оставить только имя архива, то он создаётся в директории, где лежат архивируемые файлы. Было бы удобнее сбросить галочку, чем удалять путь в строке «Имя архива».

При нажатии клавиши «Ok» при неверном указании дополнительных параметров арживации выдается длинное сообщение об ошибке (в одну строку, не помещающееся по длине в экран) «Exit status: 1536», но архив с файлами всё же создаётся с именем первого неверного параметра независимо от того, какую кнопку на сообщении об ошибке нажмёшь.

Double Commander
Version: 0.7.7 beta
Revision: 7285
Build date: 2016/12/28
Lazarus: 1.6.2.0
FPC: 3.0.0
Platform: x86_64-Linux-gtk2
OS version: Debian stretch/sid

Widgetset library: GTK 2.24.25

Re: Не работает архиватор rar.

#5 Post by Alexx2000 » Sun Jan 08, 2017 12:36 am

Re: Не работает архиватор rar.

#6 Post by BluePegas » Sun Jan 08, 2017 12:53 pm

А с чем связана данная галочка? Где можно об этом почитать?

Сразу попробовал. Работает. Но налетел на одно «НО». При запущенном qBittorrent архивирование файла размером > 1 Gb (может и менее, не пробовал) компьютер зависает наглухо в процессе архивирования в произвольном месте. Так происходило 2 раза подряд, больше пробовать не стал. Спасает, естественно, только перезагрузка машины. Архивирование по Alt+F5 того же файла без запущенного qBittorrent машину заканчивается успешно (пробовал 2 раза подряд). В терминальном окне rar не зависает, особенно, если каждый запуск rar архивирует отдельный файл, размером > 100 Mb и между запусками делать временную паузу хотя бы на секунду. Тоже самое у меня происходит в Windows 7 64, (проверял с запущенным mTorrent). Думаю, это останется на совести у rar.

Кстати, могу помочь с описанием DC, если нужно — оно того стоит (хоть и не люблю писать документацию).

Re: Не работает архиватор rar.

#7 Post by stiv » Sun Jan 08, 2017 2:27 pm

Re: Не работает архиватор rar.

#8 Post by BluePegas » Sun Jan 08, 2017 3:14 pm

Как писал «Alexx2000», а права писать архив в ту папку есть или нет? На это Вы так и не ответили.

У меня Debian 64 8.6 и права есть писать туда, где создаю архив и архив создаётся и в терминале, и в DC.

Re: Не работает архиватор rar.

#9 Post by stiv » Sun Jan 08, 2017 3:52 pm

Права на /usr/lib64/doublecmd — 755
в самой директории тоже сделал такие же права.
В директории, куда кладу(хочу положить) архив, права 777 . Это файлопомойка, куда пишут все, кто хочет.
Пример в первом посте не очень корректный. Каюсь, что ввёл в заблуждение. Всё делаю в общих папках, где права 777.
Проблема та же. Потом, записать я через doublecmd могу без проблем. Ошибка, именно при запуске упаковщика rar.
Пробовал отключать поодиночке rar4 и rar5 в настройках. Selinux отключил. Без разницы.

Попробовал запустить doublecmd-qt под рутом. Ошибка: Упаковка в файл — 1917974080 .
В консоли, запуская пользователем тот же файл в ту же папку, архив создаётся.
Попробовал другой файл, перезапустив doublecmd-qt Ошибка: Упаковка в файл — 368933312
и не меняется, то есть номер ошибки меняется от запуска к запуску. %(
Глянул сообщения в консоли Error loading configuration file /root/.config/doublecmd/highlighters.xml , но это до запуска архивации.

Буду пробовать. «Любую вещь можно наладить, если вертеть в руках достаточно долго» (с)

Источник

Луколовка

понедельник, 13 января 2020 г.

Настройка архиватора RAR в Double Commander под Ubuntu Linux

Double Commander замечательный двухпанельный файловый менеджер, наподобие Total Commander. Он кросплатформенный и работает, в том числе, и на Ubuntu Linux. Но есть досадный момент, что «из коробки» не работает архиватор rar.

Переходим по ссылке — https://sourceforge.net/p/doublecmd/wiki/Download/ и качаем архив нужной разрядности из раздела «Portable packages (most modern distro)». В архиве есть файл libunrar.so . Нужно его скопировать в директорию /lib .

На всякий случай, сохранил архивы в Облако Mail.ru: doublecmd-0.9.7.gtk2.i386.tar.xz и doublecmd-0.9.7.gtk2.x86_64.tar.xz . Кстати, это портативные версии для Linux`ов.

Сложный способ (работает через пень колоду)

$ sudo apt-get install libunrar
[sudo] пароль для lookolovka:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
E: Невозможно найти пакет libunrar

Требуемая библиотека libunrar отсутствует в репозитории. Будем ставить её вручную.

Источник

Rar doublecmd не работает

Double Commander является на мой взнляд одной из лучшей альтернотивой для ОС Linux виндовому Total Commander-у. Рассмотрим процесс установки Double Commander и заставим его открывать rar архивы.

Вот что пишут о программе на сайте doublecmd.sourceforge.net

Double Commander — это кросс платформенный open source файл менеджер, с двумя панелями. Целью данного проекта является создание файл менеджера аналогичного по функциональности Total Commander и совместимого с его плагинами. Вообщем штука хорошая.

Основные характеристики Double Commander — Поддержка Unicode, поддержка вкладок, встроенный текстовый редактор (F4) с подсветкой синтаксиса, встроенный просмотрщик файлов (F3) для просмотра файлов в шестнадцатеричном, двоичном или текстовом формате, работа с архивами (ZIP, TAR GZ, TGZ, LZMA, BZ2, RPM, CPIO, DEB, RAR) так же, как с подкаталогами, расширенный поиск файлов, настраиваемая панель, поддержка WCX, WDX и WLX плагинов от Total Commander, т.п.

Установка Double Commander.

2.1.Для GNOME и XFCE.

Устраняем ошибку при открытии rar файлов в Double Commander

В процессе ипользование Double Commander Ver: 0.6.6 обнаружил, что при открытии архива rar вылетает ошибка вида «Не могу открыть файл» или отсуствует libunrar.

Первым делом попробовал установить libunrar, однако получил ошибку, похоже он отсуствует в репозитории.

Читайте также:  Как настроить рабочий стол автокад

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

1. Забираем исходник с сайта www.rarlab.com/rar_add.htm, ссылка «UnRAR source».

2. Переходим в каталог со скаченным архивом. В моем случае /home/linux-source/unrarsrc-5.3.11.tar.gz и распаковываем архив.

3. Переходим в каталог unrar и в нем компилим и устанавливаем библиотеку.

Замечание. Может потребоваться установить дополнительно пакет разработки build-essential для компиляции.

На этом все. Обязательно устанавливайте Double Commander если вам нужен двухпанельный файловый менеджер похожий на Total Commander. Комментируем, подписываемся ну и всем пока:)

1″ :pagination=»pagination» :callback=»loadData» :options=»paginationOptions»>

Источник

2.7. Внешние архиваторы

Содержание

1. Работа со сжатыми файлами

После должной настройки Double Commander сможет работать со сжатыми файлами, как если бы это были простые папки.

Например, если у нас в панели есть ZIP-файл, мы можем просто выделить его, нажать Enter и в панели будет показано содержимое этого файла так же, как если бы мы перешли в каталог.

«Внутри» сжатого файла мы можем выполнять некоторые минимальные базовые функции, такие как просмотр файла, копирование его в другую панель и некоторые другие.

На изображении ниже показан пример открытия сжатого файла «help.rar»:

2. Средства для работы со сжатыми файлами

Double Commander достаточно универсален, чтобы через собственный интерфейс использовать внешние программы для работы со сжатыми файлами.

Он использует два разных принципа:

  • С помощью плагинов
  • Читая и разбирая вывод командной строки внешнего архиватора

3. Работа с плагинами

Мы можем настроить Double Commander на использование «архиваторных плагинов», которые помогут справиться со сжатым файлом.

Дистрибутив Double Commander уже включает в себя некоторые из подобных WCX-плагинов.

На момент написания этих строк имеем следующий список (перечислены типы архивов, которые уже добавлены в настройки):

Архиваторные (WCX) плагины в дистрибутиве
Имя плагина Поддерживаемые архивы
*.7z, *.arj, *.cab, *.cpio, *.cramfs, *.dmg, *.fat, *.hfs, *.iso, *.lha, *.lzh, *.ntfs, *.squashfs, *.taz, *.vhd, *.wim, *.xar и *.z
*.bz2, *.gz, *.jar, *.lzma, *.tar, *.tbz, *.tgz, *.tlz, *.txz, *.xz, *.zip и *.zipx

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

Кроме того, в Интернете мы можем найти ряд других WCX-плагинов.

Также помните, что плагины, написанные для работы с Total Commander, должны работать и с Double Commander.

Чтобы установить, включить или настроить их, нам нужно зайти в Настройки > Параметры. > Плагины > Плагины WCX:

4. Работа с внешними архиваторами

Иногда нужного плагина просто не существует.

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

Double Commander использует механизм работы с внешними архиваторами аналогичный плагину MultiArc для Total Commander.

Чтобы было понятнее, использование внешнего архиватора можно описать следующим образом: это способ запустить архиватор, но заставить Double Commander управлять им, передавая исполняемому файлу архиватора различные параметры, которые нам понадобятся для интеграции с приложением.

Оставшаяся часть этой страницы будет посвящена вопросу настройки Double Commander для использования внешнего архиватора.

Предположим, мы хотим использовать «rar.exe» для работы с архивами RAR.

Как можно догадаться, необходимо настроить вызов внешнего архиватора для того, чтобы мы могли.

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

Все эти действия будут сконфигурированы в окне настроек DC в разделе «Архиваторы»:

Давайте рассмотрим универсальные возможности, предлагаемые нам Double Commander для использования внешнего упаковщика.

5. Настройка интеграции внешних архиваторов

Мы не будем описывать здесь, в начале, каждое поле, вместо этого подробно, шаг за шагом, разберём пример интеграции внешнего архиватора «rar.exe».

5.1. Добавление нового внешнего архиватора

Нажимаем кнопку «Добавить», указываем имя архиватора и теперь мы готовы его настроить.

Далее нам нужно добавить описание архиватора, путь к исполняемому файлу, а затем расширение файла, без точки.

Если у нас более одного возможного расширения, просто перечисляем их через запятую, без пробела.

5.2. Переменные для команд внешнего архиватора

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

Чтобы помочь в этом, Double Commander предлагает нам ряд переменных, ниже представлена таблица доступных:

Определение команды
Переменная Что означает
Длинное имя архиватора (как в поле «Архиватор»)
Короткое имя архиватора (как в поле «Архиватор»)
Список файлов.
Это файл, содержащий имена файлов, которые будут обрабатываться внешним архиватором.
Имена файлов длинные.
Список файлов с короткими именами файлов
Имя одного файла для обработки.
Архиватор будет вызван несколько раз, до тех пор, пока не будут обработаны все файлы.
Эта переменная должна использоваться только в том случае, если архиватор не поддерживает работу со списком файлов в командной строке.
Размер тома (для многотомного архива)
Максимальный допустимый код завершения (errorlevel, код выхода).
Например, %E2 означает, что принимаются коды завершения 0, 1 и 2.
Эта переменная может быть указана в любом месте команды.
Если она не используется, то только код завершения 0 считается успешным.
По умолчанию MultiArc конвертирует вывод архиватора из кодировки OEM (DOS) в UTF-8.
Используйте её для переопределения кодировки, возможные модификаторы смотрите ниже.
Может использоваться только с командой «Список».
Целевая поддиректория В архиве
Если какая-то переменная заключена в фигурные скобки, то она будет добавлена только если эта переменная содержит что-либо, т.е. не пустая
Зависит от режима, устанавливается в диалоге настройки, MultiArc будет запрашивать у пользователя дополнительные параметры командной строки, которые должны быть размещены на месте %S

Не беспокойтесь, ниже мы покажем пример для лучшего понимания.

5.3. Модификаторы переменных

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

Модификаторы переменных
Буква модификатора Что означает
включить в список только файлы (применимо к переменным %L и %l)
брать в кавычки имена с пробелами
использовать только имя, без пути
использовать только путь, без имени
использовать кодировку ANSI (может использоваться с переменными %L и %O)
использовать кодировку UTF-8 (может использоваться с переменными %L и %O)

И снова не волнуйтесь, пример будет ниже.

5.4. Настройка действия «Список»

Если мы хотим, чтобы Double Commander работал с архивами, как если бы это был каталог с файлами, у нас должна быть возможность получить список файлов в архиве.

На данный момент нам не нужно его распаковывать! Нет, это лишь вопрос получения списка его содержимого, чтобы Double Commander нам его показал.

В нашем примере «rar.exe», смотрим его документацию и видим команду «v», которая позволит нам использовать консольное приложение «rar.exe» для получения списка файлов внутри архива:

Значит, для получения списка нам необходимо вызвать «rar.exe» с командой «v» и именем архива.

Сначала проверим это вручную, с файлом E:\Temp\just.rar

Итак, теперь нам нужно настроить действие «Список», чтобы сообщить Double Commander, как вызвать «rar.exe» для получения содержимого сжатого файла.

Чтобы сделать это, запишем то же, но уже используя описанные выше переменные и модификаторы.

Вот как это будет выглядеть:

У нас получилось %P v %AQA :

  • %P будет заменено нашим исполняемым файлом, то есть «E:\Program Files\WinRAR\Rar.exe»
  • v останется как есть, так как является командой архиватора «rar.exe» для просмотра списка файлов
  • %A — это имя архива, мы добавляем к нему Q , чтобы указать DC на необходимость взять имя в кавычки, если в нём есть пробелы, и с помощью A указываем использовать кодировку ANSI
Читайте также:  Как настроить ахк для малиновки

Таким образом, всё это для того, чтобы вызвать внешний архиватор с подходящими параметрами.

Будет использовано при вызове внутренней команды cm_OpenArchive.

5.5. Получение списка содержимого

Теперь архиватор будет выводить список файлов внутри архивов.

Но это еще не всё! Далее нам нужно разобрать вывод архиватора, приведя его к виду, необходимому для показа в файловой панели.

5.5.1. Разграничение области для анализа

Как мы видели на изображении выше, «rar.exe» выводит не просто голые данные.

Есть некоторая информация, которую мы должны убрать, чтобы сохранить только необходимое.

К счастью, мы можем указать Double Commander магическую строку, с которой DC начнёт анализ последующих строк.

Кроме того, мы можем указать магическую строку, останавливающую разбор данных.

Поскольку у нас есть пунктирная линия до и после, довольно просто установить эти два параметра:

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

Символ карет «^» указывает, что магическая строка располагается в самом начале строки и никак иначе.

Если магическая строка, останавливающая разбор данных, может быть спутана с именем файла, то DC может прекратить анализ слишком рано, поэтому, когда возможно, полезно уточнить, что эта строка должна начинаться с самого начала строки.

Есть смысл установить «Конец списка» как можно дальше, но сохраняя его функцию: лучше и безопаснее убедиться, что в будущем не будет путаницы.

5.5.2. Разбор списка содержимого

Теперь DC точно знает, какие данные анализировать для получения списка файлов внутри архива.

Было бы проще жёстко задать в приложении порядок анализа вывода «rar.exe», но Double Commander этого не делает.

Вместо этого он чрезвычайно универсален, предоставляя нам возможность полностью настроить анализ!

Это может быть немного сложнее, но, с другой стороны, это даёт нам максимальную гибкость, поскольку так мы можем использовать внешние архиваторы, о которых разработчики Double Commander даже не знали!

Для извлечения информации из каждой строки списка файлов мы будем использовать шаблоны.

5.5.3. Стандартный синтаксис разбора вывода

Таблица ниже содержит выражения стандартного синтаксиса разбора вывода и, как мы увидим в примере, стандартный синтаксис преимущественно основана на прямой подстановке.

Когда это возможно, мы будем стараться использовать этот синтаксис, поскольку он работает быстрее, чем описанный далее расширенный.

Стандартный синтаксис разбора вывода
Выражение Что означает
трёхбуквенное имя месяца (Jan, Feb, Mar, . )
буква-модификатор часов: a — время до полудня (a.m.), p — время после полудня (p.m.)
пропустить до первого пробела или конца строки
для имён файлов, расположенных в конце строки: использовать все символы до конца строки

5.5.4. Пример со стандартным синтаксисом

Таким образом, вся суть заключается в том, чтобы использовать доступные выражения из предыдущей таблицы для создания шаблона «Формат списка», который в свою очередь укажет Double Commander, как этим архиватором получить содержимое архива: каталоги и имена файлов, размеры файлов, атрибуты, даты и т.д.

Для удобства скопируем строку текста, полученного нами ранее при ручном запуске архиватора, в текстовый редактор, а строкой ниже напишем соответствующий шаблон из выражений предыдущей таблицы.

Вот что у нас получится:

Итак, мы написали шаблон:

  • серия «a» соответствует атрибутам файлов
  • серия «z» соответствует размеру несжатых файлов
  • буквы даты и времени соответствуют дате и времени файлов
  • серия «n», с запасом, соответствует именам файлов

Теперь выделим наш архив «just.rar» в панели, нажмём Enter , чтобы войти в него как в каталог, и видим, что показ содержимое файла работает (за исключением последнего файла. ):

5.5.5. Расширенный синтаксис разбора вывода

Следующая таблица представляет нам расширенный синтаксис разбора вывода внешнего архиватора.

Использование элементов этого синтаксиса требует немного больше времени для обработки, поэтому используйте их только тогда, когда иначе невозможно разрешить проблемную ситуацию.

Пример его использования будет приведён в следующем разделе.

Расширенный синтаксис разбора
Выражение Что означает
после имени не в конце строки: использовать все символы до следующего пробела
после любого числового поля: использовать все цифры до первого нецифрового символа
имя файла: использовать все символы до конца строки
размер несжатого файла: использовать все цифры до первого нецифрового символа
размер сжатого файла: использовать все цифры до первого нецифрового символа
пропустить все пробелы/табуляции до следующего символа или до конца строки
данные продолжаются на следующей строке (поддерживается максимум 2 строки)
в точности один пробел, если на этом месте находится другой символ, то вся строка игнорируется
размер несжатого файла, умноженный на указанное значение (в данном случае: 1024)
размер сжатого файла, умноженный на указанное значение (в данном случае: 1024)

5.5.6. Пример с расширенным синтаксисом

Пример со стандартным синтаксисом оказался хорош, но не идеален.

В некоторых случаях он будет работать неправильно.

С огромными файлами размер будет намного шире, чем ожидалось, поэтому наша первая попытка не удалась.

Посмотрите на наш файл 007 Skyfall.TS .

Мы видим, что отображается неверная информация. Давайте сравним:

Видим ошибки в имени файла, размере, дате и т.д.

Давайте для разрешения этой проблемной ситуации воспользуемся элементами расширенного синтаксиса.

Вот что можно использовать, даже если выводимое поле не всегда *точно* одной и той же ширины:

Немного сложнее, но очень легко описать, и в конце мы увидим, что всё это не так уж сложно.

Раскрашенное описание поможет нам визуализировать каждый маленький блок разбора:

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

5.6. Настройка действия «Извлечь»

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

Продолжаем работу с «rar.exe», из документации мы знаем, что для извлечения файла или группы файлов используется команда «x».

С «rar.exe» мы также можем указать в параметре список файлов для извлечения.

Воспользуемся предлагаемой Double Commander переменной %L , которая создаст текстовый файл с выделенными для извлечения файлами, и передадим его как параметр.

Ниже представлена строка для извлечения на примере «rar.exe»:

Описание этого примера:

  • %P будет заменено исполняемым файлом архиватора
  • x — это команда «rar.exe» для извлечения
  • -y — это параметр «rar.exe»: использовать ответ «Да» на все запросы
  • %AQA — это имя архива. «Q» указывает DC, что необходимо взять имя в кавычки, если в нём есть пробелы, «A» указывает использовать кодировку ANSI
  • @ — это символ-индикатор «rar.exe» для указания файла списка
  • %LQA — имя файла списка для обработки внешним архиватором

Итак, эта команда будет вызываться, когда мы пожелаем извлечь всё содержимое выделенного архива, только один файл из него и т.д.

Когда мы «входим» в архив как в каталог и нажимаем F3 , чтобы просмотреть содержимое файла внутри архива, действие «Извлечь» происходит в фоне, выбранный файл извлекается с использованием этого шаблона во временный каталог, а уже оттуда передаётся просмотрщику.

Будет использовано при вызове внутренней команды cm_ExtractFiles.

5.7. Настройка действия «Добавить»

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

Продолжаем работу с «rar.exe», из документации мы знаем, что для создания архива или добавления файла или группы файлов в существующий архив используется команда «a».

С «rar.exe» мы также можем указать в параметре список файлов для добавления.

Воспользуемся предлагаемой Double Commander переменной %L , которая создаст текстовый файл с выделенными в активной панели файлами, и передадим его как параметр.

Ниже представлена строка для создания или добавления в архив на примере «rar.exe»:

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

Описание этого примера:

  • %P будет заменено исполняемым файлом архиватора
  • a — это команда «rar.exe» для создания архива или добавления в уже существующий архив
  • -y — это параметр «rar.exe»: использовать ответ «Да» на все запросы
  • %AQA — это имя архива. «Q» указывает DC, что необходимо взять имя в кавычки, если в нём есть пробелы, «A» указывает использовать кодировку ANSI
  • @ — это символ-индикатор «rar.exe» для указания файла списка
  • %LQA — имя файла списка для обработки внешним архиватором

Итак, эта команда будет вызвана, когда мы выберем файл или группу файлов и пожелаем упаковать с помощью внешнего архиватора «rar».

Будет использовано при вызове внутренней команды cm_PackFiles.

5.8. Настройка действия «Удалить»

Некоторые форматы сжатых файлов поддерживают возможность удаления файла внутри архива.

Если эта возможность поддерживается, мы можем в Double Commander настроить для этого вызов внешнего архиватора.

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

Обратите внимание, что это действие находится на второй вкладке настроек внешнего архиватора.

Продолжая наш пример с «rar.exe», вот как мы можем настроить это действие:

Описание этого примера:

  • %P будет заменено исполняемым файлом архиватора
  • d — это команда «rar.exe» для удаления файла в архиве
  • -y — это параметр «rar.exe»: использовать ответ «Да» на все запросы
  • %AQA — это имя архива. «Q» указывает DC, что необходимо взять имя в кавычки, если в нём есть пробелы, «A» указывает использовать кодировку ANSI
  • @ — это символ-индикатор «rar.exe» для указания файла списка (да, мы можем удалить более одного файла за раз)
  • %LQA — имя файла списка для обработки внешним архиватором

5.9. Настройка действия «Проверить»

Некоторые архиваторы позволяют проверить целостность файла архива, чтобы убедиться, что в них нет ошибки, что ничего не повреждено.

Если эта возможность поддерживается, мы можем в Double Commander настроить для этого вызов внешнего архиватора.

Продолжая наш пример с «rar.exe», вот как мы можем настроить это действие:

Описание этого примера:

  • %P будет заменено исполняемым файлом архиватора
  • t — это команда «rar.exe» для проверки архива
  • -y — это параметр «rar.exe»: использовать ответ «Да» на все запросы
  • %AQA — это имя архива. «Q» указывает DC, что необходимо взять имя в кавычки, если в нём есть пробелы, «A» указывает использовать кодировку ANSI

Будет использовано при вызове внутренней команды cm_TestArchive.

Если ошибок нет, окно тестирования будет закрыто, в противном случае появится следующее сообщение:

5.10. Настройка действия «Распаковать не учитывая пути»

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

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

Для этого используется действие «Распаковать не учитывая пути».

Продолжая наш пример с «rar.exe», вот как мы можем настроить это действие:

Описание этого примера:

  • %P будет заменено исполняемым файлом архиватора
  • e — это команда «rar.exe» для извлечения файлов без сохранения структуры каталогов
  • -y — это параметр «rar.exe»: использовать ответ «Да» на все запросы
  • %AQA — это имя архива. «Q» указывает DC, что необходимо взять имя в кавычки, если в нём есть пробелы, «A» указывает использовать кодировку ANSI
  • @ — это символ-индикатор «rar.exe» для указания файла списка
  • %LQA — имя файла списка для обработки внешним архиватором

Такой способ можно выбрать в диалоговом окне распаковки архива:

5.11. Настройка действия «Создать самораспаковывающийся архив»

Некоторые архиваторы могут создавать «самораспаковывающиеся» сжатые файлы (SFX-архивы).

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

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

Как правило, это действие зачастую настраивается так же, как действие «Добавить», но с добавлением параметра, указывающего, что нужен самораспаковывающийся архив.

Так обстоит дело, например, с «rar.exe». Вот как мы можем настроить это действие:

Описание этого примера:

  • %P будет заменено исполняемым файлом архиватора
  • a — это команда «rar.exe» для создания архива или добавления в уже существующий архив
  • -y — это параметр «rar.exe»: использовать ответ «Да» на все запросы
  • -sfx — это параметр «rar.exe», указывающий, что результатом должен стать самораспаковывающийся архив
  • %AQA — это имя архива. «Q» указывает DC, что необходимо взять имя в кавычки, если в нём есть пробелы, «A» указывает использовать кодировку ANSI
  • @ — это символ-индикатор «rar.exe» для указания файла списка
  • %LQA — имя файла списка для обработки внешним архиватором

Самораспаковывающийся архив создаётся, как и обычный архив, с помощью внутренней команды cm_PackFiles, но в появившемся окне нужно отметить опцию «Самораспаковывающийся архив».

5.12. Использование ID

Мы можем настроить Double Commander таким образом, чтобы он игнорировал расширение файла и пытался определить сжатый файл по его внутреннему содержимому, а затем вызывал описанные выше соответствующие команды получения списка и распаковки.

Для этого мы будем использовать внутреннюю команду cm_OpenArchive.

Примером использования может быть открытие самораспаковывающегося EXE-файла и получение содержимого, не запуская его.

Другим примером может быть просмотр содержимого архива, который сохраняется с иным, чем обычный архив, расширением файла, примером таких файлов могут быть, например, DOCX-файлы Microsoft Word, которые на самом деле представляют собой сжатые ZIP-файлы.

Мы можем настроить DC для обнаружения сигнатуры выбранного файла (шаблона данных в определённом месте файла), чтобы он был распознан и передан соответствующему архиватору.

Мы будем называть эти шаблоны «ID» и этот раздел посвящён их настройке.

Для этого у нас есть три опции: ID, Смещение ID и Диапазон поиска ID.

Мы укажем Double Commander, где нужно искать определённый ID для распознавания типа архива, а затем настроим команды, специфичные для этого типа архива.

Начнем с простого примера. На следующем изображении показано начало архива 7-Zip в шестнадцатеричном виде:

Посмотрев другие архивы 7-Zip, мы видим, что первые четыре байта — это всегда последовательность 0x37 0x7A 0xBC 0xAF.

Итак, извлечём из этого пользу: столкнувшись с файлом, который начинается с этой последовательности, Double Commander предположит, что этот файл является архивом 7-Zip.

Мы должны записать ID группами по два шестнадцатеричных числа, разделяя их пробелами.

Смещение ID (необязательный) — это позиция ID в архиве. Если не указано, поиск ID будет идти с начала файла. Мы можем задать смещение со знаком «-» (минус): в этом случае поиск будет идти с конца файла. Специальное значение ограничивает поиск ID, если не найдено числовое значение смещения ID. Диапазоны поиска «0 .. размер файла» или «0 .. Диапазон поиска ID» (в зависимости от того, какое будет меньше). Значения могут быть указаны в десятеричной (12345) или шестнадцатеричной (0x3039) системе счисления. Отрицательные значения в шестнадцатеричном виде обозначаются как 0xFFFFFFFF (-1 в десятичном).

Диапазон поиска ID (необязательный) — это число байт, в которых Double Commander будет искать ID, если задано . По умолчанию 1 МБ.

Примечание: Все вышеуказанные параметры могут иметь несколько значений, в таком случае можно перечислить их через запятую.

В нашем примере с архивом 7-Zip будет достаточно указать ID и смещение ID (0, потому что в начале файла).

Теперь, когда мы вызовем команду cm_OpenArchive, Double Commander просканирует содержимое файла, найдёт последовательность «0x37 0x7A 0xBC 0xAF» по смещению 0, и будет обрабатывать его как тип 7Z, с соответствующими командами и параметрами для получения списка, распаковки и т.д.

Источник

Оцените статью