- Очистка экрана Clearing the Screen
- Пример 1 Example 1
- Пример 2 Example 2
- Пример 3 Example 3
- Как просмотреть, сохранить и очистить историю команд командной строки в Windows
- Просмотр, сохранение, очистка истории команд командной строки
- 1] Просмотр истории команд с помощью DOSKEY
- 2] Просмотр истории CMD с помощью клавиши F7
- 2] Сохранить историю командной строки
- 4] Очистить историю командной строки, используя Alt + F7
- Как очистить командную строку
- Работа с командной строкой ( CMD ) Windows
- Запуск командной строки.
- Настройка командной строки.
- Использование буфера обмена.
- Использование истории команд и горячих клавиш.
- Автодополнение путей файлов
- Перенаправление данных стандартного ввода /вывода консоли.
- Объединение нескольких команд в цепочку
- Командные файлы
Очистка экрана Clearing the Screen
Существует четыре способа очистки экрана в консольном приложении. There are four ways to clear the screen in a console application.
Пример 1 Example 1
Это рекомендуемый метод с использованием виртуальных последовательностей терминалов для всех новых разработок. This is the recommended method using virtual terminal sequences for all new development. Дополнительные сведения см. в обсуждении классических API консоли и виртуальных последовательностей терминалов . For more information, see the discussion of classic console APIs versus virtual terminal sequences .
Первый способ — настроить приложение для виртуальных выходных последовательностей терминала, а затем вызвать команду «очистить экран». The first method is to set your application up for virtual terminal output sequences and then call the «clear screen» command.
Дополнительные варианты этой команды см. в документации по виртуальным последовательностям, посвященной стиранию экрана . You can find additional variations on this command in the virtual terminal sequences documentation on Erase In Display .
Пример 2 Example 2
Второй метод — написать функцию для прокрутки содержимого экрана или буфера и задать заливку для видимого пространства. The second method is to write a function to scroll the contents of the screen or buffer and set a fill for the revealed space.
Это соответствует поведению командной строки cmd.exe . This matches the behavior of the command prompt cmd.exe .
Пример 3 Example 3
Третий метод заключается в написании функции для программного очистки экрана с помощью функций филлконсолеаутпутчарактер и филлконсолеаутпутаттрибуте . The third method is to write a function to programmatically clear the screen using the FillConsoleOutputCharacter and FillConsoleOutputAttribute functions.
Этот прием показан в следующем образце кода. The following sample code demonstrates this technique.
Как просмотреть, сохранить и очистить историю команд командной строки в Windows
Командная строка – это не что иное, как черно-белая утилита командной строки, которая поставляется из коробки в Windows 10/8/7. Но те, кто знает его истинный потенциал, это отличная замена для стороннего программного обеспечения многих пользователей. Например, он может помочь вам организовать разделы жесткого диска, создать загрузочный USB-накопитель, обновить все файлы BIOS и многое другое. Многие администраторы и опытные пользователи, как правило, используют несколько команд в этой командной строке для выполнения своей работы. Сегодня мы поговорим о 2 методах, которые помогут пользователю просматривать историю своих командных строк, и об одном способе сохранения этой истории в Windows 10.
Просмотр, сохранение, очистка истории команд командной строки
Мы рассмотрим следующие темы:
- Просмотр с использованием DOSKEY.
- Просмотр с помощью клавиши F7.
- Сохраните историю командной строки.
- Очистить историю командной строки.
1] Просмотр истории команд с помощью DOSKEY
Этот метод довольно прост. После того, как вы ввели ряд команд в окне командной строки, все, что вам нужно сделать, это ввести следующую команду в том же окне командной строки:
После этого вы сможете проверить все команды, которые вы только что ввели во время этого сеанса, в командной строке в той же последовательности, в которой вы их вводили.
Вы можете проверить фрагмент экрана того же самого выше.
2] Просмотр истории CMD с помощью клавиши F7
Это лучше, чем метод DOSKEY, упомянутый выше. Я не утверждаю, что, поскольку это лучше, но если вы просто хотите вернуться к какой-либо ранее выполненной команде, это действительно надежно.
Чтобы просмотреть историю команд, вам нужно нажать клавишу F7 . F7 работает также для командной строки и PowerShell.
Это приведет к появлению небольшого всплывающего окна со списком всех ранее выполненных команд в сеансе.
Вы можете использовать клавиши со стрелками вверх и вниз для навигации по списку и нажать клавишу Enter , чтобы выбрать любой из них.
2] Сохранить историю командной строки
Иногда вам может потребоваться сохранить записи команд, которые они использовали в сеансе с использованием командной строки, в файле TXT, HTML, CSV или RTF.
Для этого вы можете использовать расширение команды DOSKEY.
Вам просто нужно ввести следующую команду, а затем нажать клавишу Ввод ,
Затем сохраненный файл истории будет сохранен в том месте, где вы выполнили команду в окне командной строки.
4] Очистить историю командной строки, используя Alt + F7
Самый простой способ – перезапустить командную строку. История команд очищается автоматически каждый раз, когда вы ее закрываете и снова запускаете командную строку.
Чтобы очистить историю команд, вы также можете использовать сочетание клавиш Alt + F7 . Alt + F7 работает также для командной строки и PowerShell.
Вы также можете удалить историю команд с помощью редактора реестра. Перейдите к следующей клавише:
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ RunMRU
Далее выберите RunMRU и сотрите все значения, имеющие имя, букву алфавита в правой панели. После этого щелкните правой кнопкой мыши MRUList > Изменить и удалите содержимое данных значений.
Дополнительные советы и рекомендации по командной строке здесь.
Как очистить командную строку
Используйте следующие команды для управления самим инструментом командной строки:
— cls — очистка командной строки;
— cmd — запуск копии командной строки;
— color — выбор цветового отображения фона и текста командной строки;
— prompt — редактирование текстового приглашения командной строки;
— title — выбор заголовка окна для текущего сеанса командной строки;
— exit — завершение работы инструмента командной строки.
Введите следующее значение в поле командной строки для получения информационных данных системы:
— driverquery — отобразить свойства и текущее состояние драйвера выбранного устройства;
— systeminfo — показать данные системы и конфигурации компьютера;
— ver — отобразить информацию о текущей версии операционной системы.
Измените необходимые параметры системы с помощью следующих команд:
— date — возможность редактирования текущей даты;
— schtasks — возможность создания расписания запуска программ или выполнения команд;
— shutdown — выключение комепьютера8
— taskkill — принудительное завершение работы выбранной программы или процесса;
— time — возможность редактирования данных системного времени.
Основными значениями команд командной строки принято именовать следующие:
— copy — копировать файл;
— del — удалить файл;
— find — найти текстовое значение в выбранном файле;
Работа с командной строкой ( CMD ) Windows
Командная строка представляет собой программное средство ввода команд пользователем и получения результатов их выполнения на экране. В современных операционных системах семейства Windows, командную строку обеспечивает стандартное приложение cmd.exe , так же называемое командным процессором, интерпретатором команд и консолью. Приложение ”Командная строка” предоставляет пользователю текстовый интерфейс для ввода команд и получения результатов их выполнения. Фактически, командная строка является программным эмулятором классической консоли первых компьютерных систем, представляющей собой терминал с клавиатурой, используемый оператором в качестве средства общения с компьютером. Как и во времена первых компьютеров, командная строка поддерживает стандартное устройство ввода – клавиатуру, и стандартное устройство вывода – дисплей. Пользователь вводит команды с клавиатуры и получает результаты их выполнения на экране дисплея.
Запуск командной строки.
Для запуска командной строки можно воспользоваться одним из следующих способов:
Пуск — Выполнить (или клавиши Win+R) введите cmd и нажмите клавишу Enter;
Пуск — Все программы — Стандартные — Командная строка»;
Пуск — Поиск — Командная строка. Также, для запуска командной строки можно использовать заранее подготовленный ярлык, ссылающийся на исполняемый файл %SystemRoot%\system32\cmd.exe ( обычно – C:\Windows\system32\cmd.exe). Выполнение некоторых команд требует повышенных привилегий, поэтому, приложение командной строки должно быть запущено с использованием пункта контекстного меню ”Запуск от имени администратора”, вызываемого правой кнопкой мышки.
Настройка командной строки.
Стандартное окно командной строки – это окно с символами белого цвета на черном фоне. Параметры шрифтов, цвет и фон символов, использование буфера обмена и прочие свойства командной строки можно изменить в соответствии со своими предпочтениями. Настройки можно выполнить изменяя свойства ярлыка, с помощью которого выполняется запуск приложения командной строки, либо правкой параметров реестра, относящихся к командному процессору.
Работа в командной строке предполагает ввод данных с клавиатуры, при чем, иногда довольно большого объема. Этот объем можно значительно сократить, используя некоторые приемы:
Использование буфера обмена.
Текст, выделенный в окне приложения, можно скопировать в буфер обмена, а также вставить его из буфера обмена в поле ввода. При стандартных настройках командной строки для выделения текста используется пункт ”Пометить” контекстного меню, вызываемого правой кнопкой мышки. При желании, в свойствах ярлыка, с помощью которого выполняется запуск можно включить режим выделения мышью:
В режиме выделения мышью, контекстное меню не используется, а текст выделяется с использованием левой кнопки мышки. Копирование и вставка выполняется при нажатии правой кнопки мышки. При включенном режиме ”Разрешить сочетания клавиш с CONTROL”, можно использовать стандартные сочетания клавиш:
— CTRL+C (CTRL+Insert) – скопировать выделенный текст.
— CTRL+V (Shift+Insert) – вставить выделенный текст.
Использование истории команд и горячих клавиш.
Для вызова ранее введенных команд используются клавиши со стрелками Стрелка Вверх — на одну команду назад и Стрелка Вниз — на одну команду вперед. Кроме того, можно использовать функциональные клавиши:
F1 — посимвольный вызов последней введенной команды. Каждое нажатие F1 приводит к последовательной подстановке в поле ввода одного символа из предыдущей команды.
F2 — копирование до символа. После нажатия на F2 на экране отображается запрос символа, до которого будет скопирована предыдущая команда. Например, если предыдущая команда была ping yandex.ru , и в качестве символа задана точка, то в строку ввода команды будет занесено ping yandex , если задан пробел, то — ping .
F3 — вызов предыдущей команды.
F4 — удалить до символа. Выполняется удаление текста от текущей позиции курсора до заданного символа.
F5 и F8 — вызов буфера ранее введенных команд. Вывод по нажатию клавиши F5 прекращается когда будет отображена первая введенная команда текущей сессии.
F7 — отображение ранее введенных команд в отдельном окне в виде списка. Для выполнения нужной команды нужно выбрать ее, используя клавиши со стрелками, и нажать ENTER
F9 — выполнить команду, номер которой запрашивается. Номер команды в списке истории можно получить при использовании F7 .
В Windows 10 / Windows Server 2016 появились возможности, отсутствующие в предыдущих реализациях командной строки:
— Изменение прозрачности окна консоли при нажатии комбинаций CTRL + Shift + — или CTRL + Shift + + .
— Включение / выключение полноэкранного режима при нажатии CTRL+Enter .
— Расширение возможностей выделения текста и редактирования:
Shift+Home – выделить текст от текущего положения курсора до начала строки.
Shift+End – выделить текст от текущего положения курсора до конца строки.
— Быстрое перемещение по буферу экрана и поиск по контексту:
CTRL+Home – перейти в начало буфера экрана
CTRL+End – перейти в конец буфера экрана.
CTRL+Стрелка Вверх — перемещение на 1 строку вверх.
CTRL+Стрелка Вниз — перемещение на 1 строку вниз.
CTRL+F — открыть диалог поиска текста в буфере экрана.
Окно командной строки в Windows 10 можно закрыть с помощию стандартной комбинации клавиш — ALT+F4 .
Для отключения новых возможностей CMD, необходимо в свойствах приложения установить галочку ”Использовать прежнюю версию консоли (требуется перезапуск)”
Автодополнение путей файлов
В командной строке Windows можно выполнять подстановку имен файлов и каталогов при нажатии клавиши Tab . Например, для перехода, в каталог с длинным именем Program Files наберите начальную часть имени каталога
CD Pro и нажмите Tab. В строке ввода должна появиться команда :
CD «Program Files»
Как видим, выполняется подстановка недостающей части имени каталога, а в тех случаях, когда в нем имеется символ пробела, добавляются еще и двойные кавычки.
Если имеется несколько совпадающих начальных частей имен файлов или каталогов, при каждом нажатии клавиши Tab будет подставляться следующее по алфавитному порядку имя. Для возврата на предыдущее — используется комбинация Shift+Tab
Перенаправление данных стандартного ввода /вывода консоли.
Как уже упоминалось, в качестве стандартного устройства ввода командной строки используется клавиатура, а в качестве устройства вывода – дисплей. Однако, существует возможность перенаправления ввода-вывода на другие устройства c использованием операторов перенаправления:
> — перенаправление вывода. Выходные данные записываются в файл или передаются на указанное устройство.
ping –n 5 localhost > nul — выполнить пинг петлевого интерфейса 5 раз с перенаправлением вывода в фиктивное устройство nul . Вывод результатов выполнения команды подавляется. Подобный прием используется для организации задержки в командных файлах, поскольку пинг петлевого интерфейса выполняется почти мгновенно, а интервал между пингами равен одной секунде, время выполнения данной команды определяется значением параметра -n
ping –n 100 yandex.ru > C:\ping-ya.txt — выполнить 100 раз пинг узла yandex.ru c записью результатов выполнения команды в файл C:\ping-ya.txt. Если файл не существует, он будет создан, а если существует, его содержимое будет затерто.
>> — то же, что и в предыдущем случае, но данные записываются в конец файла.
ping –n 100 yandex.ru >> C:\ping-ya.txt — то же, что и в предыдущем примере, но, если файл не существует, то он будет создан, а если существует, то запись результатов будет выполняться в конец файла.
— перенаправление ввода. Данные считываются не с клавиатуры, а из файла или другого устройства.
cmd — запустить командный процессор CMD и выполнить ввод данных из файла 1.txt. Если в файле поместить строку ping –n 100 yandex.ru , то выполнится команда, рассмотренная выше.
| — вывод первой команды перенаправить на вход следующей за ней.
Нередко, вывод одной команды нужно передать в качестве вводимых данных для другой, т.е. объединить команды в последовательную цепочку:
ping -n 100 microsoft.com | find «Превышен интервал» — результат выполнения команды ping -n 100 microsoft.com передается в виде входных данных для команды поиска строк ( find ), содержащих текст «Превышен интервал».
ping -n 100 microsoft.com | find «Превышен интервал» > C:\ping-ya.txt — то же, что и в предыдущем примере, но с перенаправлением выводимых результатов выполнения команды в текстовый файл.
Использование дескрипторов ввода-вывода консоли.
Каждому открытому файлу или устройству соответствует свой дескриптор ( handle ) который представляет собой неотрицательное число, значение которого используется породившим поток ввода-вывода процессом. По умолчанию, для всех процессов, в том числе и для командного интерпретатора cmd.exe :
0 ( STDIN ) – дескриптор стандартного ввода (ввод с клавиатуры).
1 (STDOUT) – дескриптор стандартного вывода (вывод на экран).
2 (STDERR) – дескриптор вывода диагностических сообщений (сообщений об ошибках на экран).
Дескрипторы можно использовать в тех случаях, когда требуется перенаправить (изменить) источники и приемники данных в стандартных потоках ввода-вывода. Например:
ping.exe –n 100 yandex.ru 2> C:\pinglog.txt — стандартный поток сообщений программы ping.exe будет выводиться на экран, а ошибки ( стандартный вывод с дескриптором = 2 ) будут записаны в файл C:\pinglog.txt . В реальном случае для программы ping.exe приведенная конструкция значения не имеет, поскольку она выводит и диагностику, и результаты на экран.
Для задания перенаправления в существующие дескрипторы используется амперсанд (&), затем номер требуемого дескриптора (например, &1):
ping –n 100 yandex.ru >log.txt 2>&1 — стандартный поток сообщений об ошибках (дескриптор=2) перенаправляется в стандартный поток вывода (дескриптор = 1) и все это перенаправляется в файл log.txt текущего каталога.
ping –n 100 yandex.ru >log.txt 1>&2 — стандартный вывод (дескриптор = 1) перенаправляется в вывод сообщений об ошибках (дескриптор=2) и все это записывается в текстовый файл.
Если дескриптор не определен, то по умолчанию оператором перенаправления ввода будет ноль (0), а оператором перенаправления вывода > будет единица.
Объединение нескольких команд в цепочку
В командной строке Windows существует возможность последовательного выполнения нескольких команд в зависимости от результатов их выполнения. Для чего используются символы объединения команд — & (амперсанд) и | (вертикальная черта)
& — одиночный амперсанд используется для разделения нескольких команд в одной командной строке. Например:
echo ping ya.ru — вывод на экран строки ping ya.ru
echo &ping ya.ru — последовательное выполнение команды echo без параметров и команды ping ya.ru
&& — условное выполнение второй команды. Она будет выполнена, если код завершения (значение которого передается в стандартную переменную ERRORLEVEL) первой команды равен нулю, т.е. команда выполнена успешно.
команда1 && команда2 — выполняется команда1 , а команда2 выполняется, только если первая была выполнена успешно. Например:
ping ya.ru -err & ping –n 2 ya.ru — при использовании единичного амперсанда, первая команда ping ya.ru –err выдаст сообщение о неверном параметре -err , а вторая, ping –n 2 ya.ru выполнит двукратный пинг узла ya.ru
ping ya.ru -err && ping –n 2 ya.ru — при использовании двойного амперсанда, первая команда ping ya.ru –err выдаст сообщение о неверном параметре -err и соответственно, сформирует код завершения не равный нулю (ошибка), что приведет к тому, что вторая команда ( ping ya.ru -n 2 ) выполнена не будет.
Двойная вертикальная черта || — условное выполнение второй команды. Если первая команда завершилась с кодом возврата не равным нулю (неуспешно), то выполняется команда, следующая за двойной вертикальной чертой.
команда1 || команда2 — если команда1 выполнена неуспешно, то запускается на выполнение команда2
ping –n 1 ya.ru && ping –n2 ya.ru || ping –n 3 ya.ru — сначала выполнится 1-я команда ping ya.ru –n 1 — однократный пинг узла ya.ru , затем выполнится команда ping ya.ru -n 2 — двукратный пинг узла ya.ru . Третья команда ping ya.ru -n 3 , трехкратный пинг узла ya.ru выполнена не будет.
ping –n 1 –err ya.ru && ping ya.ru -n 2 || ping ya.ru -n 3 — первая команда ping ya.ru –n 1 –err выполнится с ошибкой из-за неверного параметра -err , вторая команда ping –n 2 ya.ru — двукратный пинг узла ya.ru не будет выполнена из-за условия двойного амперсанда, и в результате выполнится третья команда ping –n 3 ya.ru , трехкратный пинг узла ya.ru .
В некоторых случаях может возникнуть необходимость запрета обработки служебных символов и трактовки их в качестве простого текста. Например, если ввести в командной строке
ECHO ping -n 1 ya.ru & ping -n 2 ya.ru
то вместо текста ping -n 1 ya.ru & ping -n 2 ya.ru будет выведена его часть до символа амперсанда ping -n 1 ya.ru и затем выполнена команда после амперсанда — ping -n 2 ya.ru . Проблему решает использование специального экранирующего символа ^ , который позволяет использовать служебные символы как текст:
ECHO ping -n 1 ya.ru ^& ping -n 2 ya.ru — вывод на экран текста ping -n 1 ya.ru & ping -n 2 ya.ru
Логика условной обработки команд, реализуемая с помощью конструкций && и || действует только на ближайшую команду, то есть, при вводе команды
TYPE C:\plan.txt && DIR & COPY /?
команда COPY /? запустится в любом случае, независимо от результата выполнения команды TYPE C:\plan.txt . Но, несколько команд можно сгруппировать с помощью скобок. Например, есть 2 командные строки:
TYPE C:\plan.txt && DIR & COPY /?
TYPE C:\plan.txt && (DIR & COPY /?)
В первой из них символ условной обработки && действует только на команду DIR, во второй — одновременно на две команды: DIR и COPY. В качестве наглядного эксперимента, попробуйте выполнить вторую команду при условиях наличия и отсутствия файла C:\plan.txt . Для создания пустого файла можно воспользоваться копированием из фиктивного устройства nul :
copy nul C:\plan.txt
Для удаления файла используется команда erase c:\plan.txt или del C:\plan.txt
Командные файлы
Командные файлы (сценарии, скрипты) – это обычные текстовые файлы с заранее подготовленным набором команд для их выполнения командным процессором cmd.exe . Стандартно, такие файлы имеют расширение .bat или .cmd . Строки командных файлов могут содержать специфические команды самого процессора команд, например — FOR, ECHO, REM и т.п. или имена исполняемых модулей – reg.exe, sc.exe, auditpol.exe., которые можно использовать без расширения – reg, sc, auditpol. Пример простого командного файла:
REM Создается текстовый файл со списком каталога Windows
dir C:\Windows > %TEMP%\winlist.txt
REM выполняется задержка на 5 секунд
ping -n 5 localhost > nul
REM Файл открывается в редакторе WordPad
write %TEMP%\winlist.txt
REM После завершения работы Wordpad, текстовый файл удаляется.
erase C:\winlist.txt
Строки, начинающиеся с REM являются комментариями. В качестве примера, используются команды для работы с файловой системой и выполняется запуск приложения графической среды – текстового редактора Wordpad (write.exe) с передачей ему параметра командной строки (имя файла). Язык командных файлов довольно примитивен и не в полной мере соответствует требованиям сегодняшнего дня, однако, он является самым простым средством автоматизации рутинных действий и используется большинством системных администраторов и грамотных пользователей. Работа с командными файлами – это отдельная тема, более подробно изложенная на странице Командные файлы
Прочие материалы для освоения работы в командной строке Windows:
Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»