Cmd. exe - что это? Cmd. exe - ошибка приложения
Командная строка Windows, хотя и пользуется популярностью у администраторов и опытных пользователей ПК, рядовым владельцам персональных компьютеров неизвестна. Цель этой статьи – ознакомить людей с выгодами, которые они получат от её использования.
Операционная система Windows известна своим графическим интерфейсом, и многие пользователи уже забыли или никогда не слышали о полезных функциях командной строки. Windows – это больше, чем "просто навести и кликнуть". Клавиатура и командная строка могут существенно дополнить мышь с иконками.
Cmd.exe – что это?
Командная строка появляется при запуске cmd.exe. Это системный процесс MS Windows, а также интерпретатор команд, поддерживающий файловые и сетевые функции ПК. Cmd.exe работает, загружая приложения и переправляя данные между ними. Процесс переводит данные, введённые в систему, в понятную операционной системе форму. Cmd.exe оперирует рядом встроенных команд, исполняемых в среде командной оболочки.
Последняя представляет собой программу, которая обеспечивает прямое сообщение между пользователем и операционной системой. Используется для создания и редактирования скриптов (пакетных файлов) для разных целей. Например, для управления учётными записями пользователей. Применение программы командной оболочки даёт возможность автоматизировать некоторые операции. Это намного быстрее, чем прибегать к помощи внешних программ. Также можно настроить окно командной строки на свой вкус и контролировать выполнение задач.
Вызов командной строки
Командную строку можно вызывать запуском приложения в системной директории System32\cmd.exe. Что, это сложно? Есть и другие варианты:
- Через меню «Пуск – Все программы – Система Windows – Командная строка».
- Зайти в меню «Пуск», в окне поиска набрать cmd и запустить «Командную строку».
- Вызвать окно запуска приложений комбинацией клавиш Win+R, ввести cmd и нажать кнопку «Пуск».
- Нажатием правой кнопкой мыши на меню «Пуск» вызвать всплывающее окно и выбрать нужный вам элемент. Для запуска приложения с правами администратора выбрать пункт «Командная строка (администратор)».
- Нажатие правой кнопкой мыши с одновременно зажатыми клавишами Shift и Alt в «Файловом проводнике» вызовет контекстное меню, в котором необходимо выбрать пункт «Открыть командное окно здесь». В результате произойдёт запуск командной строки в выбранной директории.
Чтобы закрепить System 32\cmd.exe в меню «Пуск», необходимо щёлкнуть на программе правой кнопкой и в контекстном меню выбрать пункт «Закрепить в меню Пуск».
Конфигурация
Настройку командного окна можно произвести, нажав правую кнопку мыши на его заголовке и выбрав пункт «Умолчание». Выбранная конфигурация сохранится и для последующих сеансов работы cmd.exe. Для задания настроек только для текущего сеанса следует воспользоваться пунктом «Свойства».
Здесь можно выбрать параметры шрифта, размера и расположения окна, цвет текста, фона, прозрачность.
При выборе параметра «Выделение мышью» можно выделять текст при нажатой левой кнопке манипулятора, а клавишей «Ввод» копировать его в буфер обмена.
Цвета командного окна можно также задать при запуске Cmd.exe с параметром /t:fg, где f задаёт цвет текста, а g – фона в виде шестнадцатеричной цифры от 0 до F: чёрный (0), синий (1), зелёный (2), морской волны (3), красный (4), фиолетовый (5), жёлтый (6), белый (7) и их светлые оттенки в том же порядке с кодами от 8 до F.
Ключи Cmd.exe: что это?
При запуске командной строки используются и другие ключи. Синтаксис запуска приложения Cmd.exe выглядит следующим образом:
cmd [[{/c|/k}] [/s] [/q] [/d] [{/a|/u}] [/t:fg] [/e:{on|off}] [/f:{on|off}] [/v:{on|off}] строка], где:
- c исполняет команду, заданную строкой, и завершает работу приложения;
- k исполняет команду, заданную строкой, и продолжает работу приложения;
- s изменяет трактовку строки после ключей /c или /k;
- q отключает вывод на экран;
- d отключает автозапуск;
- a задаёт вывод в стандарте ANSI;
- u задаёт вывод в Юникоде;
- t:fg задаёт цвет текста и фона;
- e:{on|off} подключает и отключает использование расширенного набора команд;
- f: {on|off} подключает и отключает завершение имени файла или директории;
- v: {on|off} подключает и отключает отложенное расширение переменной окружения, записанной между !, во время выполнения команды;
- «строка» задаёт команду, которую необходимо исполнить;
- /? выводит помощь в командное окно.
Несколько команд сразу
В строке команд, заданной в виде параметра, можно указать две и более Cmd.exe-команды. Для этого строку нужно заключить в кавычки, а команды разделить с помощью последовательности символов &&.
Этот же разделитель команд используется в самой командной строке. Здесь он носит название оператора И: команда_1 && команда_2: если команда_1 исполнилась успешно, то исполнится команда_2.
Оператор соединения команд &: команда_1 & команда_2: команда_2 выполнится после команды команда_1.
Оператор ИЛИ: команда_1 || команда_2: команда_2 выполнится, если команда_1 не сможет выполниться.
Оператор конвейера |: команда_1 | команда_2: данные на выходе команда_1 перенаправляются на вход команда_2.
Группирование команд производится с помощью круглых скобок: (команда_1 & команда_2) || команда_3: если команда_1 и команда_2 не выполнятся, то выполнится команда_3.
Если множественные команды имеют больше одного параметра, то они разделяются знаками запятой или точкой с запятой: команда_1 параметр_1;параметр_2
Некоторые другие операторы:
- команда > файл перенаправляет вывод команды в файл, создавая его или перезаписывая существующий;
- команда >> файл добавляет вывод команды в существующий файл или создаёт новый;
- команда < файл использует содержимое файла в качестве входных данных команды;
- @echo off используется в пакетных файлах для отключения вывода команд на экран.
Горячие клавиши
При работе с командной строкой можно и нужно использовать горячие клавиши:
- Кнопка ↓ / ↑ - перебирает ранее набранные команды.
- Backspace - стирает символ левее курсора.
- Ctrl Home - стирает строку влево.
- Ctrl End - стирает строку вправо.
- Ctrl ← - перемещает курсор на одно слово влево (назад).
- Ctrl → - перемещает курсор на одно слово вправо (вперёд).
- Ctrl-C - прерывает выполнение текущей команды.
- Esc - очищает командную строку.
- F1 - эквивалентна нажатию стрелки вправо. Каждое её нажатие вводит в командную строку по порядку один символ последней команды.
- F2 - выводит последнюю команду до символа, нажатого после функциональной клавиши.
- F3 - вводит последнюю команду полностью.
- F4 - удалит команду до символа, введённого после нажатия функциональной клавиши.
- F5 - эквивалентна стрелке вверх, вводит последние команды по очереди.
- F6 - отвечает комбинации клавиш Ctrl+Z и производит вставку символа конца файла EOF.
- F7 - выводит окно с перечнем ранее набранных команд.
- Сочетание клавиш Alt+F7 - удаляет историю команд.
- F8 - эквивалентна F5 с цикличным повторением. Если F8 нажать после ввода начальных символов ранее введённой команды, то программа её заполнит до конца.
- F9 - вставит команду, номер которой в истории команд соответствует числу, набранному после функциональной клавиши.
- Insert - переключает режим ввода вставить/переписать.
- Tab - автоматически заполняет имя папки или файла, перебирая варианты при каждом последующем нажатии. Shift+Tab меняет направление перебора.
Внутренние и внешние команды
В консоли могут использоваться команды двух видов – внутренние и внешние. Внутренние встроены в интерпретатор и могут запускаться только из командной строки. Внешние запускаются отдельным исполняемым файлом как из консоли, так и из пункта меню «Пуск – Выполнить». Их список можно получить с помощью команды help. А более подробную информацию можно получить после ввода «help команда» или «команда /?». Например, для получения справки о xcopy следует ввести help xcopy или xcopy /?
Команды для всех
Много команд консоли ориентировано на сети и администрирование, поэтому ими часто пользуются системные администраторы. Но есть и такие cmd.exe-команды, что доступны для обычного пользователя ПК. Ниже приведены некоторые из них.
1. Del /s папка\* – убирает содержимое из указанной директории и всех вложенных папок. Другой ключ /f позволит стереть файлы, доступные только для чтения. При абсолютной уверенности в этой операции добавление ключа /q избавит от необходимости подтверждать каждое удаление. Команду следует использовать с осторожностью, так как удалённые таким образом документы в корзину не попадают.
2. Mkdir (или md) может создать целое дерево директорий: md папка_1\папка_2\папка_3.
3. Xcopy открывает широкие возможности для обычного и резервного копирования большого числа файлов. Например, ключ /d:[мм-дд-гггг] позволит оперировать лишь с документами, изменённые после указанной даты. Дополнительный ключ /s позволит копировать также и вложенные папки. В общей сложности у команды 27 ключей.
4. Удалить директорию поможет rmdir (или аналогичная rd). При этом папки должны быть пусты. Ключ /s позволит избавиться от вложенных директорий вместе с их содержимым. Дополнительный ключ /q также возможен.
5. Dir папка\*.doc /h /s > список.txt создаст файл со списком документов MS Word в указанной директории, включая скрытые файлы (благодаря ключу /h) и документы во вложенных папках (ключ /s).
6. Изменить расширение файла можно с помощью команды ren *.txt *.doc.
7. Move /y папка_1\*.mp3 папка_2\ переместит mp3-файлы из папка_1 в папка_2 без подтверждения перезаписи. И наоборот, ключ /-y предотвратит такую перезапись.
8. Cmd.exe start . откроет текущую директорию в Windows Explorer.
9. Cmd.exe start .. откроет в Windows Explorer папку на ступень выше текущей.
10. Команда System32\cmd.exe start shell:cookies откроет системную папку с интернет-«печеньем». Для операционных систем, предшествующих Windows 7, Cmd.exe-команда ещё проще: start cookies.
11. Attrib -r -s -h файл уберёт метки файла «только для чтения», «системный» и «скрытый».
12. Subst z: папка облегчит доступ к папке, присвоив ей название диска Z.
Пакетный файл
Кроме командной строки Cmd.exe способен обрабатывать пакетные файлы – текстовые документы с расширением .bat или .cmd, содержащие строки команд, выполняемые по очереди.
Пакетный файл способен использовать аргументы – данные пользователя, передаваемые в определенном виде: %1, %2. В процессе выполнения эти параметры заменяются данными пользователя.
Команда set /p переменная= [строка] позволяет передавать в пакетный файл значения переменных. Например, set /p name= Как тебя зовут? создаёт переменную %name% со значением, введённым пользователем.
Пакетные файлы могут принимать решения и выбирать действия в зависимости от условий:
- If (условие) (команда_1) Else (команда_2) – при выполнении условия выполнится команда_1, иначе _ команда_2;
- if exist файл del файл – файл будет удалён, если он существует;
- if not exist файл echo файл отсутствует – если файл отсутствует, то пакетный файл сообщит об этом;
- if /i строка_1 gtr строка_2 команда – команда выполнится, если строка_2 больше строка_1 без учёта регистра символов (ключ /i).
- goto :метка позволить перейти к метке, оставив часть команд без исполнения.
- for %%X in (*.jpg) do (команда) – даёт возможность выполнить команду для всех файлов с расширением .jpg.
Безопасная остановка процесса
Файл Cmd.exe является системным. Настоятельно рекомендуется не удалять его и не останавливать процессы, им запущенные. Они очень важны для корректной работы компьютера. Если же необходимость остановить процесс всё-таки возникла, нужно выполнить следующее:
1. Зайти в меню «Пуск», набрать Msconfig в окне поиска и запустить утилиту. Появится окно со списком инструментов конфигурации системы.
2. Выбрав закладку StartUp, проверить наличие Cmd.exe в списке.
3. Убрать галочку напротив названия процесса, применить изменения и перезагрузить компьютер.
4. После перезагрузки снять отметку с автоматического запуска конфигуратора системы при включении ПК.
Другой способ заключается в проверке списка автоматически запускаемых процессов в редакторе регистра.
Cmd.exe можно остановить с помощью диспетчера задач в закладке процессов. Для этого необходимо выбрать процесс и нажать на кнопку «Завершить процесс».
Причины ошибок
Сообщение Cmd.exe «Ошибка приложения» чаще всего является результатом повреждения системных файлов операционной системы. Из-за этого сбоя страдает производительность компьютера. Также проблемы в системных процессах возникают по причине несовместимости приложений, неполного удаления файлов, заражения компьютерными вирусами, неправильной работы программ и др. Всё это может привести к удалению или порче важных системных файлов.
Способы устранения ошибок Cmd.exe
Одно радует в ошибках Cmd.exe - что это дело поправимое. Не поможет одно решение, так найдётся другое. Вот некоторые из них.
- Войти в операционную систему с правами администратора.
- Отменить последние изменения, после которых возникает сообщение Cmd.exe «Ошибка приложения». А если оно появляется во время запуска одной и той же программы, то удалить или переустановить её.
- Убедиться в надёжной защите от вирусов. Следует просканировать компьютер и устранить нежелательные программы.
- Одной из наиболее часто встречающихся причин этой ошибки является повреждение реестра. Это ранжированная база данных, в которой собраны сведения о конфигурации, адресах электронной почты, паролях, путях к файлам и другая информация, необходимая для нормальной работы ПК. Для исправления ситуации можно воспользоваться инструментом восстановления реестра утилиты Registry Cleaner.
- Обновление драйвера видеокарты с официального сайта производителя.
- Переустановка DirectX, NetFramework, Microsoft Visual C++ с официального сайта "Майкрософт".
- Запуск exe cmd-команды sfc /scannow от имени администратора. Системная утилита просканирует ПК на предмет наличия ошибок и предложит пути их устранения.