Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.95/97: Рейтинг темы: голосов - 97, средняя оценка - 4.95
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
#1

Настройка интерфейса и эффективное использование CMD [Статья]

23.11.2013, 16:24. Просмотров 17690. Ответов 48
Метки нет (Все метки)

Статья от 27.10.2013
Автор: Dragokas

1. Настройка интерфейса и эффективное использование CMD.
1.1. Управление мышкой.
1.2. Внешний вид, цвета и буфер экрана.
1.3. Быстрые клавиши, автоподстановка имен файлов/папок, история команд.
1.4. Поиск текста в выводе консоли.

Что мы получим:
  • удобство набора;
  • быстрый доступ к ранее введенным командам;
  • скоростной ввод имен файлов, даже не зная их перечня;
  • визуальную привлекательность окна;


Начнем тюнинг:

Запустим консоль - "Пуск", "Выполнить", CMD, {ENTER}.
Правый клик мыши по заголовку (или ALT + Пробел) -> Свойства или Умолчания*

* Свойства - означает, что настройки применяются к окну ком. процессора (CMD.exe), а также пакетным файлам команд .BAT, .CMD
* Умолчания - означают, что настройки наследуются консольными программами, если иные параметры не предусмотрены ее разработчиком.

5.1. Управление мышкой.

Вкладка "Общие":

Копирование/вставка в/из буфера обмена

1. "Выделение мышью" и "Быстрая вставка" - ставим галочку.
Теперь можем выделять текст с помощью мыши, как в обычном блокноте.

Копирование текста в буфер (после его выделения) - правый клик мышью.
Вставка из буфера - тоже правый клик мышью. Быстро и удобно

Обратите внимание:
если эта настройка включена, случайный клик мышью по окну CMD
приведет к приостановке выполнения пакетного файла, пока Вы не нажмете любую* клавишу на клавиатуре.
* Например, стрелку (только не модификаторы Ctrl, Alt...).

5.2. Внешний вид и буфер экрана.

Цвет шрифта и фона:

1) Через Свойства

Вкладка "Цвета" ->
1. Текст на экране
2. Фон экрана.

Можно настроить в любой RGB-гамме.
По-умолчанию, доступны 16 предустановленных цветов,
но можно задать и отдельно каналы "Красный", "Зеленый" и "Синий"
Внимание: это заменяет предустановленную ячейку цвета*.

Давайте, зададим фон окна CMD под стиль форума SafeZone.cc:
Нажимаем: Цвета -> Фон экрана -> Синяя ячейка цвета -> Выставим вручную гамму:
R (красный) - 30
G (зеленый) - 0
B (синий) - 115.



*Чтобы сбросить гамму на стандартную, достаточно удалить параметр реестра:
HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe\ColorTable01


2) Цвет можно временно задать и через команду консоли:
Код
Color 0B
где 0 и B - 16-ричный код цвета
1-я цифра - фон
2-я цифра - текст

Настройки сохраняться только в текущем окне до выхода.

Расшифровка Color /?

0 = Черный 8 = Серый
1 = Синий 9 = Светло-синий
2 = Зеленый A = Светло-зеленый
3 = Голубой B = Светло-голубой
4 = Красный C = Светло-красный
5 = Лиловый D = Светло-лиловый
6 = Желтый E = Светло-желтый
7 = Белый F = Ярко-белый


Colors_DEMO_by_Inquisitor.zip

Текущие настройки хранения выбранного цвета фона/цвета текста находятся в параметре реестра:
HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe\ScreenColors

Размер окна и положение:

1) Через свойства:

Высота и буфер экрана вывода.

Вкладка: "Расположение" -> Размер окна -> "Высота"
По-умолчанию: 25, что весьма мало.
Рекомендую ставить по-больше: 40-80 символов.
Важно видеть сразу максимум информации на экране без необходимости в полосе прокрутки.

Но иногда отчет бывает так велик, что прокручивать все равно нужно.
И тут наткнемся на буфер:
по-умолчанию, консоль сохраняет последние 300 строк вывода.
По желаю, можете установить больше - 500, к примеру.
Больше не рекомендую, иначе полоса прокрутки будет слишком маленькой: за нее тяжело ухватиться и пролистывание будет чрезмерно быстрым.

Ширина.

Вкладка: "Расположение" -> Размер окна -> "Ширина"
По-умолчанию: 80 и этого зачастую хватает.
Иногда бывает необходимость увидеть "широкий" вывод в одну строку, например:
  • длинное имя ключа реестра,
  • помощь по команде Robocopy /?
Согласитесь, в режиме 120 символов по ширине выглядит более симпатично:

RoboCopy - Скриншот 80 против 120


Ширина 80 символов



Ширина 120 символов





2) Высоту и ширину можно задать и командой консоли:
Код
mode con cols=80 lines=25
Работает только в текущем окне до выхода.
Внимание: это стирает весь вывод консоли и устанавливает буфер равным этому же значению (полосы прокрутки текста не будет).

Настройки храняться в параметре реестра:
HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe\WindowSize


Стартовое положение консоли:

Стандартно, новое окно появляется со смещением относительно старого.
По желанию, можно чтобы оно появлялось в том же месте (накладывались друг на друга).

Вкладка: "Расположение" -> Положение экрана -> "Автоматический выбор" - снять галочку.



Настройки храняться в параметре реестра:
HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe\WindowPosition


5.3. Быстрые клавиши, автоподстановка имен файлов/папок, история команд.

Представим: набрали мы длинную команду и ошиблись в 1-м символе.
Что делать?

Вариант - двигать курсор стрелками "<-" "->"
Но можно и проще:

КлавишаОписание
 Управляю курсором:
HomeКурсор в начало строки
EndКурсор в конец строки
 А теперь нужно исправить что-то в средине команды:
Ctrl + "<-"Курсор назад на одно слово
Ctrl + "->"Курсор вперед на одно слово
 А если вообще ошиблись?
EscУдаление текущей строки
 Забыли, как называется файл, или знаете только начальные символы?
 Вводим, что знаем и нажимаем 1 или более раз кнопку <Tab>
TabАвтодополнение имени файла/папки, перечисление имен в текущей или заданной папке с учетом маски.


Еще потренируемся?

Создаем папку temp

Код
md c:\temp
Выделяем в консоли текст c:\temp
и копируем в буфер правым кликом мыши.

создаем в папке пару файлов:
Код
echo.>{правый клик}\readme.txt
echo.>{правый клик}\some.doc
Выполните такие нажатия и наблюдайте за происходящим:
Код
c:\temp\{TAB}{TAB}
{ESC}
{правый клик}r{TAB}
{ESC}
{правый клик}*.doc{TAB}

История команд.

Мы ввели команду:

Код
copy c:\temp\readme.txt 1.txt
Теперь мы хотим ввести:
КлавишаОписание
 - предыдущую команду еще раз
Стрелка "Вверх" или F3 Ввод предыдущей команды.
 - если вводили немногим ранее:
Стрелка "Вверх" несколько раз Ввод предыдущей (N-раз ранее) команды
 - если очень давно вводили существует история команд:
F7 история команд


{F7} - Вывод меню с перечнем введенных нами команд в хронологическом порядке.
Двигаться по меню - стрелки "Вверх", "Вниз". Выполнить команду - {ENTER}.
Настройка истории команд:
Количество запоминаемых команд - ALT + Space, "Свойства", вкладка "Общие" -> Запоминание команд -> Размер буфера.

Не показывать одинаковые команды - там же, галочка "Отбрасывать повторения".


Часто используемые комбинации:

На завершение привожу все горячие клавиши:

КлавишаОписание
Ctrl + C Завершение работы пакетного файла, прекращение работы команды, консольной утилиты. Например, нужно прервать перечисление файлов Dir /S
HomeКурсор в начало строки
EndКурсор в конец строки
EscУдаление текущей строки
TabАвтодополнение имени файла/папки, перечисление имен в текущей или заданной папке с учетом маски.
F7 история команд
"Вверх"Перечисление предыдущих введенных команд
"Вниз"Используйте вместе с "Вверх": движение по предыдущим командам


Редко используемые:

КлавишаОписание
Ctrl + "<-"Курсор назад на одно слово
Ctrl + "->"Курсор вперед на одно слово
InsertОбычный режим или перезапись текста поверх
F3 Ввод предыдущей команды
PgUPАналог F3
PgDownВывод предыдущей команды
F1 Ввод первых N символов предыдущей команды
F2Копировать до символа...
F4Удалить до символа...
F6, аналог Ctrl+ZСимвол завершения строки. Может использоваться, например, в команде copy con 1.txt
F8 Выводит предыдущую команду, на 1 пункт выше от выделенной в меню истории F7
F9 Ввести предыдущую команду по номеру из меню истории F7
Ctrl + I Аналог TAB
Ctrl + G{ENTER} Символ "Bell" - подает звуковой сигнал (работает не на всех материнских платах).
Колесо мыши Вертикальная прокрутка
Средний клик мышьюАвтопрокрутка с регулируемой скоростью.



5.4. Поиск текста в выводе консоли.

Значимость:
Допустим, вывод справки к команде, и там Вы хотите найти нужное слово.

Итак, перед Вами текст:

Хочу найти слово "service"

Жмем эмблему "C:\" (левый вырхний угол ) или ALT + Space, "Изменить" -> "Найти..."
Вводим service {ENTER} несколько раз.

Найденное помечается выделением.



Из недостатков этого способа следует отметить:
- нельзя искать русские слова.
- текст будет утерян из виду, если его кол-во превысит установленный буфер экрана.
Выход:
  • использовать Find/Findstr (см. ниже)
  • форсировать вывод сообщений на английском языке от служебных команд с помощью переключения кодовой страницы в начале пакетного файла командой: chcp 862
2) Альтернативой является использование фильтров (Find, Findstr), которые мы рассмотрим в другом уроке.

Код
autorunsc /? | find /i "service"


Миниатюры
13
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2013, 16:24
Ответы с готовыми решениями:

использование cmd файлов
Забыл уже как cmd скрипты правильно писать Мне нужно из cmd файла запустить...

Настройка в Zabbix мониторинга загрузки интерфейса fa0/0
Добрый день. Настраиваю в заббиксе мониторинг загрузки интерфейса fa0/0 и...

Настройка интерфейса командного файла через Batch Enhancer
Подскажите пожалуйста как сделать меню для командного командного файла,...

Автоматическая настройка среды cmd на отображение кириллицы при запуске
Код, который внизу: chcp 1251 Делает русские буквы понятными, а без неё -...

Как установить строковую переменную среды cmd (с использование команды set) в батнике?
Казалось бы, всё просто //батник set /p per=x или //батник set /p...

48
Eva Rosalene
T for Trans-
4050 / 1589 / 303
Регистрация: 06.01.2013
Сообщений: 4,179
Завершенные тесты: 2
23.11.2013, 17:10 #2
Обратите внимание:
если эта настройка включена, случайный клик мышью по окну CMD
приведет к приостановке выполнения пакетного файла, пока Вы не нажмете любую* клавишу на клавиатуре.
Это самая лучшая фича. Так легко на паузу поставить

И еще. На последнем скринчике выведены строки, которых не должно быть, потому что "find". ЯНП
1
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
23.11.2013, 17:16  [ТС] #3
Они были выведены потому что Марк загнал их во 2-й поток
Вот так не выведет:
Bash
autorunsc /? 2>&1 | find /i "service"
Добавлено через 1 минуту
Цитата Сообщение от FraidZZ Посмотреть сообщение
Это самая лучшая фича. Так легко на паузу поставить
Да. Но если делаешь скрипт для людей, лучше подстраховаться.
2
ranebull
527 / 360 / 56
Регистрация: 23.06.2013
Сообщений: 1,182
Записей в блоге: 6
23.11.2013, 18:01 #4
Цитата Сообщение от Dragokas Посмотреть сообщение
Статья от 27.10.2013
Автор: Dragokas

1. Настройка интерфейса и эффективное использование CMD.
Отличная статья, большое спасибо
0
shoomilka
0 / 0 / 0
Регистрация: 28.12.2012
Сообщений: 5
21.01.2014, 21:48 #5
Я знаю, я - немного дурочка. Но пытаюсь найти возможность не залить фон цветом, а поставить на него картинку. Это вообще реально? И если да, то в каком направлении копать? Через редактирование реестра?

ЗЫ у меня ВинХР
0
Eva Rosalene
T for Trans-
4050 / 1589 / 303
Регистрация: 06.01.2013
Сообщений: 4,179
Завершенные тесты: 2
21.01.2014, 22:23 #6
Нет, стандартная консоль это не умеет.
0
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
21.01.2014, 22:31  [ТС] #7
Ах, мечты
0
Eva Rosalene
T for Trans-
4050 / 1589 / 303
Регистрация: 06.01.2013
Сообщений: 4,179
Завершенные тесты: 2
22.01.2014, 16:34 #8
Dragokas, может эту статю закрепить? Она полезная.
1
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
22.01.2014, 20:49  [ТС] #9
Цитата Сообщение от FraidZZ Посмотреть сообщение
Она полезная.
А другие не полезные?

Ок. Понял. Раз пользуется повышенной популярностью, закреплю.
2
shoomilka
0 / 0 / 0
Регистрация: 28.12.2012
Сообщений: 5
29.01.2014, 18:41 #10
огромное спасибо за ответы. На Асме написала программку, которая заполняет весь экран сердечками. Правда, они потом уходят за горизонт вместе с командами...
Т.ч. в какой-то мере мечты имеют способность сбываться Хотя бы ненадолго
0
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
09.04.2014, 18:37  [ТС] #11
Хорошее пояснение как действуют горячие клавиши
в статье от Nikobraz "Тонкости работы в командной строке Windows"
2
Eva Rosalene
09.04.2014, 21:10
  #12

Не по теме:

К слову сказать, в конце той статьи ссылка на наш форум. Мелочь, а приятно :)

0
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
09.04.2014, 22:12  [ТС] #13
Цитата Сообщение от shoomilka Посмотреть сообщение
Но пытаюсь найти возможность не залить фон цветом, а поставить на него картинку. Это вообще реально?
Все невозможное возможно



http://sourceforge.net/projects/conemu/
Альтернативный терминал для Windows

Win + Alt + P -> Main -> Background image.
Миниатюра
Настройка интерфейса и эффективное использование CMD [Статья]
4
shoomilka
0 / 0 / 0
Регистрация: 28.12.2012
Сообщений: 5
11.04.2014, 00:16 #14
WOW! Круто, даже на ХР идет...
0
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
02.10.2014, 23:00 #15
В Win10 текст из буфера обмена в командную строку теперь можно вставить "как в блокноте" Ctr+V
В ранних версиях - [alt] + [пробел], [и], [а] (русская локализация консоли)
2
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
02.10.2014, 23:17  [ТС] #16
sov44, ух-ты. Саша уже Win10 обзавелся ?

Может и консоль сможем портировать в Windows 7/XP... ; )
0
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
02.10.2014, 23:22 #17
Цитата Сообщение от Dragokas Посмотреть сообщение
sov44, ух-ты. Саша уже Win10 обзавелся ?
активно тестирую
http://windows.microsoft.com/ru-ru/w...e_downloadpage
0
Smitis
1629 / 338 / 39
Регистрация: 15.10.2012
Сообщений: 529
02.10.2014, 23:23 #18
Цитата Сообщение от sov44 Посмотреть сообщение
В Win10 текст из буфера обмена в командную строку теперь можно вставить "как в блокноте" Ctr+V
Удивляют иногда темпы развития M$
А Ctrl-C и т.д в консоли тоже появились?
0
sov44
1758 / 742 / 128
Регистрация: 09.04.2011
Сообщений: 1,313
02.10.2014, 23:35 #19
Цитата Сообщение от Smitis Посмотреть сообщение
А Ctrl-C и т.д в консоли тоже появились?
да, работает!
Цитата Сообщение от Dragokas Посмотреть сообщение
Может и консоль сможем портировать в Windows 7/XP... ; )
Можно поприкалываться. Собрал из system32 все cmd* https://yadi.sk/d/4zd40-PHbnXow
0
Dragokas
Эксперт WindowsАвтор FAQ
16969 / 7054 / 856
Регистрация: 25.12.2011
Сообщений: 10,868
Записей в блоге: 16
02.10.2014, 23:42  [ТС] #20
Там еще туева куча библиотек, которых нет в кочерге.
Сейчас тоже скачаю - заценю...
0
Миниатюры
Настройка интерфейса и эффективное использование CMD [Статья]  
02.10.2014, 23:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2014, 23:42

Как написать cmd создающий другой cmd
Добрый день. Смысл в том, чтобы создать CMD с настройками текущего ПК: имя...

Эффективное использование С#
Добрый вечер! У кого-нибудь есть книга: &quot;Эффективное использование С#&quot; Билла...

Эффективное использование элементов
Всем добрый вечер. Пните пожалуйста в нужное направление😅 Есть 3000+ элементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru