View previous topic :: View next topic |
Author |
Message |
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Jun 10, 2010 15:49 Post subject: Command Line Windows |
|
|
После завершения операций консольными приложениями (UPX, Lame, другие) окно командной строки исчезает с экрана. Какой параметр Windows (XP) отвечает за то, чтобы оно оставалось на виду после определенных действий? И где его найти?
Где-то на форуме об этом упоминалось...
Так же помню про историю командной строки, но не помню или даже не знаю как её вызвать. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
CaptainFlint
Joined: 14 Dec 2004 Posts: 6151 Location: Москва
|
(Separately) Posted: Thu Jun 10, 2010 16:11 Post subject: |
|
|
ask-rus wrote: | После завершения операций консольными приложениями (UPX, Lame, другие) окно командной строки исчезает с экрана. Какой параметр Windows (XP) отвечает за то, чтобы оно оставалось на виду после определенных действий? И где его найти? |
Не помню, чтобы такой параметр вообще существовал. Есть соответствующая опция в PIF-ярлыках, но она влияет только на этот ярлык, а не глобально. К тому же, если не ошибаюсь, PIF обрабатываются через command.com, а не через cmd.exe, что может приводить к неприятным неожиданностям.
ask-rus wrote: | Так же помню про историю командной строки, но не помню или даже не знаю как её вызвать. |
Если в самой консоли, то клавиши вверх-вниз вызывают поочерёдно ранее выполнявшиеся команды (запоминаются только в пределах самой консоли, глобальной истории нет). Можно ещё вызвать историю в виде диалога клавишей F7. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Thu Jun 10, 2010 17:24 Post subject: Re: Command Line Windows |
|
|
ask-rus wrote: | После завершения операций консольными приложениями (UPX, Lame, другие) окно командной строки исчезает с экрана. | Запускай такие команды строкой %comspec% /k команда параметры |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Jun 10, 2010 17:43 Post subject: |
|
|
Я предпочитаю юзать бат-файлик, который делает паузу после завершения работы UPX, и на любую клавишу закрывается. Так как обычно после завершения таких команд командная строка мне не нужна, только информация.
Вот пример файлика run_pause.bat:
Code: | @echo off
%*
echo --------
pause
cls |
Вроде работает. Просто указываешь этот файл и передаешь ему прогу для запуска с параметрами. Если надо вызвать другой командный файл, то поставь перед его именем дополнительный параметр call:
Code: | run_pause.bat upx.exe -d compressed.exe |
Code: | run_pause.bat call make_backup.bat |
Разумеется, пути к запускаемым прогам нужно указывать полные и в кавычках. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Last edited by MVV on Thu Jun 10, 2010 17:52; edited 2 times in total |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Jun 10, 2010 17:45 Post subject: Re: Command Line Windows |
|
|
Tol!k wrote: | ask-rus wrote: | После завершения операций консольными приложениями (UPX, Lame, другие) окно командной строки исчезает с экрана. | Запускай такие команды строкой %comspec% /k команда параметры |
На примере кнопки:
Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\SOFT\LAME\lame.exe
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3"
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
0
-1
|
Как это будет выглядеть? _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Jun 10, 2010 17:49 Post subject: |
|
|
Первая кнопка вызывает пользовательскую команду em_UPX, поэтому править надо саму команду в файле usercmd.ini.
А вторая:
Code: | TOTALCMD#BAR#DATA
cmd.exe /k %COMMANDER_PATH%\SOFT\LAME\lame.exe
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3"
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
0
-1 |
Или:
Code: | TOTALCMD#BAR#DATA
run_pause.bat %COMMANDER_PATH%\SOFT\LAME\lame.exe
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3"
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
0
-1 |
В первом случае закрывать крестиком или командой exit, во втором случае - крестиком или любой клавишей. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Thu Jun 10, 2010 18:03 Post subject: |
|
|
Гибрид:
Code: | TOTALCMD#BAR#DATA
cmd.exe /c %COMMANDER_PATH%\SOFT\LAME\lame.exe
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3" &pause
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
0
-1 |
Закрывается крестиком или любой клавишей, но не нужен run_pause.bat |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Jun 10, 2010 18:13 Post subject: |
|
|
MVV wrote: | Первая кнопка вызывает пользовательскую команду em_UPX, поэтому править надо саму команду в файле usercmd.ini. |
Вывод для той кнопки, что я затёр:
Code: | TOTALCMD#BAR#DATA
D:\run_pause.bat "%COMMANDER_PATH%\SOFT\UPX\upx.exe" --best --compress-icons=0
%P%N
D:\Total Commander\TOTALCMD.EXE,3
-1 |
Отлично работает. Благодарю! _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Jun 10, 2010 18:25 Post subject: |
|
|
Tol!k wrote: | Гибрид:
Code: | TOTALCMD#BAR#DATA
cmd.exe /c %COMMANDER_PATH%\SOFT\LAME\lame.exe
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3" &pause
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
0
-1 |
Закрывается крестиком или любой клавишей, но не нужен run_pause.bat |
Дословно:
Quote: | "D:\Total" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
Для продолжения нажмите любую клавишу . . . |
_________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Thu Jun 10, 2010 20:27 Post subject: |
|
|
Я выбрал вариант с батником, но, думаю, здесь тоже надо довести до конца:
Code: | TOTALCMD#BAR#DATA
cmd.exe /c ""%COMMANDER_PATH%\SOFT\LAME\lame.exe""
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3" &pause
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
-1
|
Quote: | ~ не является внутренней или внешней командой, исполняемой программой или пакетным файлом.
Для продолжения нажмите любую клавишу . . . |
Почти аналогично. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Thu Jun 10, 2010 20:56 Post subject: |
|
|
Эм... А зачем по две штуки двойных кавычек? Это ж эквивалентно их отсутствию. Параметр командной строки заканчивается первым пробельным символом, который не располагается в строке, заключенной в кавычки:
Code: | param1" еще идет "и_еще_идет" и все еще первый" о,уже_второй |
Но вообще скажу по-секрету, что CMD.exe обрабатывает параметры тупорыло. Вместо того чтобы обработать то, что ему дали после /K или /C, как нормальную командную строку, он пытается снять со всей последующей командной строки обрамляющие кавычки... Чем в микрософте думали на этот раз, не знаю, но так как кавычки не допускают вложенности в силу совпадения открывающей и закрывающей оной, он зачастую удаляет нужную кавычку, поэтому нужно передавать ему командную строку, заключенную во внешнюю пару кавычек. Поэтому при работе с CMD.exe правильным будет использовать следующий абсурдный вариант:
Code: | TOTALCMD#BAR#DATA
cmd.exe /c ""%COMMANDER_PATH%\SOFT\LAME\lame.exe"
-b 192 -q 0 --lowpass 22 %N "%O_repack.mp3" &pause"
%COMMANDER_PATH%\ICO\lame.ico
К о д и р о в а т ь в *.MP3 (192 Kbps, CBR)
-1 |
То есть, CMD.exe получит следующую строку после ключа /C:
Code: | ""%COMMANDER_PATH%\SOFT\LAME\lame.exe" -b 192 -q 0 --lowpass 22 %N "%O_repack.mp3" &pause" |
Из которой он удалит крайние кавычки и корректно выполнит оставшуюся команду, то есть, вызовет lame.exe с заданными параметрами и скушает Твикс.
Кстати, закрыть окно, ожидающее нажатия любой клавиши, можно с помощью мыши, выбрав команду Вставить контекстного меню (при непустом буфере обмена). _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Thu Jun 10, 2010 21:36 Post subject: |
|
|
MVV
Загрузил
ask-rus
Достаточно одних двойных кавычек: "%COMMANDER_PATH%\SOFT\LAME\lame.exe"
Или помести TC в папку, полное имя которой не содержит пробелов
Кстати, окна, открытые командой cmd /k я закрываю вызывая x.bat (жму x и enter) с содержимым
|
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Fri Jun 11, 2010 00:21 Post subject: |
|
|
Quote: | Достаточно одних двойных кавычек: "%COMMANDER_PATH%\SOFT\LAME\lame.exe" |
Для нормальных приложений - достаточно. А cmd.exe скажет:
Quote: | - Ы-ы, гыляди, кавычка! Нада удалить ее, и в конце тоже. |
Насколько я понял, он удаляет обрамляющие кавычки, если после /C или /K параметр начинается с кавычки. При этом он не задумывается, что может нарушить командную строку. У меня лично при запуске программы из папки с пробелом оно работало именно в указанным мной варианте - то есть, с дополнительным обрамлением кавычками всей командной строки, передаваемой командному интерпретатору после /C (то есть, одна кавычка перед путем к программе, другая - в конце строки параметров). _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Tol!k
Joined: 01 Apr 2008 Posts: 1727 Location: Арзамас
|
(Separately) Posted: Fri Jun 11, 2010 00:57 Post subject: |
|
|
Quote: | Для нормальных приложений - достаточно. А cmd.exe... | Фак!
Впрочем, я всегда говорил, что пробелы это зло. Располагайте программы, которые запускаете из ком.строки, по путям не содержащим пробелов и избежите половину проблем. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|