View previous topic :: View next topic |
Author |
Message |
GGS
Joined: 02 May 2009 Posts: 322
|
(Separately) Posted: Thu Oct 08, 2009 09:55 Post subject: Переменная %Commander_Path% в параметрах «кнопки» |
|
|
Есть работающая кнопка (пример):
Code: | TOTALCMD#BAR#DATA
cmd
/c COPY "F:\Program Files\TotalCmd\TOOLs\0.txt" "F:\Program Files\TotalCmd\TOOLs\1.txt"
TotalCmd.exe
Test-1
-1 |
Делаю замену пути на переменную:
Code: | TOTALCMD#BAR#DATA
cmd
/c COPY "%Commander_Path%\TOOLs\0.txt" "%Commander_Path%\TOOLs\1.txt"
TotalCmd.exe
Test-2
-1 |
Результат - кнопка НЕ работает. Что не так? TC 7.50a |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Thu Oct 08, 2009 10:17 Post subject: |
|
|
GGS
В одну строку это прописать надо, не используя поле Параметры, вот и всё.
В моём примере (применительно к своему размещению TC):
Code: | TOTALCMD#BAR#DATA
cmd /c COPY %Commander_path%\0.txt %Commander_path%\1.txt
TotalCmd.exe
Test-2
-1 |
_________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
GGS
Joined: 02 May 2009 Posts: 322
|
(Separately) Posted: Thu Oct 08, 2009 10:30 Post subject: |
|
|
Avada
Я привёл упрощённый вариант, для примера.
На самом деле в задаче будут ипользоваться параметры типа %N и т.п. По этой причине нужно использовать %Commander_path% в строке параметров. |
|
Back to top |
|
 |
GGS
Joined: 02 May 2009 Posts: 322
|
(Separately) Posted: Thu Oct 08, 2009 11:16 Post subject: |
|
|
Разобрался. Как и в BAT-файлах символ % надо удваивать, т.е. правильно будет %%Commander_Path%% |
|
Back to top |
|
 |
Batya

Joined: 15 Dec 2004 Posts: 2224 Location: Москва, Россия
|
(Separately) Posted: Thu Oct 08, 2009 11:19 Post subject: |
|
|
GGS
Т.к. в строке "Параметры" используются специальные шаблоны вида %N, %L и т.д., то при необходимости указать в этой строке символ "%" его необходимо задвоить, т.е. "%%". Т.о. приведённый пример должен выглядеть так:
Code: | TOTALCMD#BAR#DATA
cmd
/c COPY "%%Commander_Path%%\TOOLs\0.txt" "%%Commander_Path%%\TOOLs\1.txt"
TotalCmd.exe
Test-2
-1 |
Замечу, что символ "%" необходимо задваивать только для строки "Параметры". В строке "Команда", как в приведённом Avada варианте, задваивать "%" не надо.
Важно! Переменные окружения, указанные в строке "Параметры", должны самотоятельно обрабатываться применяемой командой (в данном случае "cmd"). Переменные окружения, указанные в строке "Команда", заменяются на соответствующие значения ТоталКоммандером перед выполнением команды.
Т.е., если используемая в кнопке команда не может самостоятельно обработать вхождение в свои параметры переменных окружения, то параметры необходимо указать в строке "Команда", а не "Параметры". _________________ Нет, я не сплю. Я просто медленно моргаю. |
|
Back to top |
|
 |
|