Параметры строки при создании архивов
Select messages from
# through # FAQ
[/[Print]\]

Total Commander -> Автоматизация Total Commander

#1: Параметры строки при создании архивов Author: equinox PostPosted: Sat Nov 22, 2008 20:15
    —
Здравствуйте все.
При использовании архиваторных плагинов возник вопрос: а можно ли назначить на горячие клавиши отдельные виды архиваторов? Например, на Ctrl + F5 - WinRar, Ctrl + F6 - gzip и так далее. Команда одна - cm_PackFiles, но можно ли ей передавать какие-либо параметры? Собственно, вопрос возник оттого, что захотел назначить на сочетание Alt+Del архиваторный плагин Wipe, который производит затирание файлов и каталогов.

#2:  Author: D1PLocation: Тбилиси PostPosted: Sun Nov 23, 2008 00:39
    —
Внешние архиваторы - можно.
Архиваторные плагины - нельзя.

#3:  Author: equinox PostPosted: Sun Nov 23, 2008 00:47
    —
D1P wrote:
Внешние архиваторы - можно.
Архиваторные плагины - нельзя.

Жаль. Можно подробнее? Например, для zip и Rar (хочу отдельные клавиши на *.gz и *.rar архивы)
И другой вопрос: можно ли передать через параметр список выделенных файлов во внешнюю wipe-утилиту (например, Eraser). Пробовал так:
Code:
cmd=""%COMMANDER_PATH%\Utils\Eraser\Eraserl.exe" -file %S -subfolders -silent -queue -method DoD"

но ничего не вышло - ругается, что
Quote:
File not found. Nothing to erase. (%S)

#4:  Author: D1PLocation: Тбилиси PostPosted: Sun Nov 23, 2008 11:10
    —
Quote:
Можно подробнее?


Как понял, вопрос про упаковку. Показываю на примере RAR для *.rar соответственно.
Конфигурация-Разное-Переопределить горячие клавиши-Клавиша.
Указываем требуемое сочетание клавиш. Существующие сочетания, вроде Alt+F5 можно переназначать, если хочется.
Жмём на кнопку с лупой, в категориях выбираем usercmd.ini, жмём кнопку "Новая", забиваем имя em_PackRar. Ок. Вводим в поля:
Команда: путь к WinRar.exe
Параметры: требуемые параметры командной строки для rar, например a c:\archive @%L. Здесь подробно останавливаться не буду - всё расписано в справке rar и TC.
Остальное трогать не нужно, применяем все изменения. Пользуемся.

Quote:
можно ли передать через параметр список выделенных файлов во внешнюю wipe-утилиту

Зависит от того, с какими параметрами работает эта утилита. Боюсь ошибиться, но мне кажется, что в данном случае просто неправильно составлена командная строка: не нужны крайние кавычки (из-за них параметры интерпретируются как текст, вместе с переменной %S. Ну и параметры лучше вбивать в отдельно для этого предназначенное поле, а не вместе с командой.

#5:  Author: equinox PostPosted: Sun Nov 23, 2008 17:05
    —
Да, ваша правда, все так и оказалось со строкой в Eraser'e.
Но теперь другая проблема. Вот код ползовательской команды, привязаной на Alt+Del:
Code:
[em_wipe]
button=%COMMANDER_PATH%\Utils\Eraser\Eraserl.exe
cmd=""%COMMANDER_PATH%\Utils\Eraser\Eraserl.exe""
path=%COMMANDER_PATH%\Utils\Eraser\
menu=Eraser
param=-file "%S" -method DoD -resultsonerror

Если оставить %S, то передается имя файла без кавычек. Если же файлов несколько, то выдается ошибка в синтаксисе команды.
Если же ставить %L, тоже ничего не удаляется, хотя окно процесса удаления мелькает. При этом ссылается на файлы типа "%Temp%\%прозвольное_имя%.TMP", где %Temp% - каталог для временных файлов.
P. S. Для одного файла работает сочетание %P%S, но ведь нужно и несколько сразу удалять, а тогда выходит ошибка

#6:  Author: D1PLocation: Тбилиси PostPosted: Sun Nov 23, 2008 21:16
    —
equinox wrote:
Да, ваша правда, все так и оказалось со строкой в Eraser'e.
Но теперь другая проблема. Вот код ползовательской команды, привязаной на Alt+Del:
Code:
[em_wipe]
button=%COMMANDER_PATH%\Utils\Eraser\Eraserl.exe
cmd=""%COMMANDER_PATH%\Utils\Eraser\Eraserl.exe""
path=%COMMANDER_PATH%\Utils\Eraser\
menu=Eraser
param=-file "%S" -method DoD -resultsonerror

Если оставить %S, то передается имя файла без кавычек. Если же файлов несколько, то выдается ошибка в синтаксисе команды.
Если же ставить %L, тоже ничего не удаляется, хотя окно процесса удаления мелькает. При этом ссылается на файлы типа "%Temp%\%прозвольное_имя%.TMP", где %Temp% - каталог для временных файлов.
P. S. Для одного файла работает сочетание %P%S, но ведь нужно и несколько сразу удалять, а тогда выходит ошибка

Опять же нужно смотреть справку к Eraser - в каком формате он принимает список файлов. А потом смотреть справку TC, чтобы найти нужный параметр.
%L - список имён внутри создаваемого TC временного файла, очевидно, что Eraser в таком формате список не примет. %S даёт список одной строкой через пробел, и кавычки там подставялются автоматически для каждого файла (если в его имени есть пробел).
В общем, не имея под рукой описания входных параметров Eraser, я конкретный ответ дать не смогу.

#7:  Author: equinox PostPosted: Mon Nov 24, 2008 00:03
    —
D1P
спасибо за ответы. Видимо, нужны обходные пути в виде плагов или скриптов. У eraser'a вроде бы есть формат *.res - списки файлов. Но мне не удалось их создать из обычного текстового списка.



Total Commander -> Автоматизация Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group