cmd.exe
Другие имена | Командный процессор Windows |
---|---|
Разработчик(и) | Microsoft , IBM , ReactOS Участники |
Первоначальный выпуск | декабрь 1987 г |
Операционная система |
|
Платформа | IA-32 , x86-64 , ARM (и исторически DEC Alpha , MIPS , PowerPC и Itanium ) |
Предшественник | COMMAND.COM |
Тип | Интерпретатор командной строки |
Командная строка , также известная как cmd.exe или cmd , является интерпретатором командной строки по умолчанию для OS/2 . [1] eComStation , ArcaOS , Microsoft Windows ( семейство Windows NT и семейство Windows CE ) и ReactOS. [2] операционные системы. В Windows CE .NET 4.2 [3] Windows CE 5.0 [4] и Windows Embedded CE 6.0 [5] она называется оболочкой командного процессора . Его реализации различаются в разных операционных системах, но поведение и базовый набор команд одинаковы. cmd.exe — это аналог COMMAND.COM в системах DOS и Windows 9x , а также аналог оболочек Unix, используемых в Unix-подобных системах. Первоначальная версия cmd.exe для Windows NT был разработан Терезой Стоуэлл. [6] Windows CE 2.11 была первой встроенной версией Windows, поддерживающей консоль и версию Windows CE. cmd.exe . [7] Реализация ReactOS cmd.exe является производным от FreeCOM, интерпретатора командной строки FreeDOS . [2]
Операция
[ редактировать ]cmd.exe взаимодействует с пользователем через интерфейс командной строки . В Windows этот интерфейс реализован через консоль Win32 . cmd.exe может использовать возможности, доступные собственным программам его собственной платформы. Например, в OS/2 и Windows он может использовать настоящие каналы в конвейерах команд, позволяя обеим сторонам конвейера работать одновременно. В результате можно перенаправить стандартный поток ошибок . ( COMMAND.COM использует временные файлы и запускает обе стороны последовательно, одну за другой.)
Несколько команд могут быть обработаны в одной командной строке с помощью разделителя команд. && . [8]
При использовании этого разделителя в Windows cmd.exe каждая команда должна быть выполнена успешно, чтобы могли быть выполнены следующие команды. Например:
C:\>CommandA && CommandB && CommandC
В приведенном выше примере CommandB будет выполняться только в том случае, если CommandA завершается успешно, и выполнение CommandC зависит от успешного завершения КомандаБ . Чтобы обрабатывать последующие команды, даже если предыдущая команда выдает ошибку, разделитель команд & следует использовать. [10] Например:
C:\>CommandA & CommandB & CommandC
В Windows XP или более поздней версии максимальная длина строки, которую можно использовать в командной строке, составляет 8191 (2 13 -1) персонажи. В более ранних версиях, таких как Windows 2000 или Windows NT 4.0 , максимальная длина строки составляет 2047 (2 11 -1) персонажи. Это ограничение включает в себя командную строку, отдельные переменные среды , унаследованные другими процессами , а также все расширения переменных среды. [11]
Кавычки необходимы для следующих специальных символов : [8]
& < > [ ] { } ^ = ; ! ' + , ` ~
и белое пространство.
Внутренние команды
[ редактировать ]ОС/2
[ редактировать ]Ниже приведен список внутренних компонентов Microsoft OS/2. cmd.exe Команды : [12]
Семейство Windows NT
[ редактировать ]Следующий список внутренних команд поддерживается cmd.exe в Windows NT и более поздних версиях: [13]
- доцент
- перерыв
- вызов
- компакт-диск
- чдир
- клс
- цвет
- копировать
- дата
- принадлежащий
- ты
- dpath
- эхо
- локальный
- стереть
- Выход
- для
- fтип
- перейти к
- если
- ключи
- Мэриленд
- мкдир
- mklink (введенный в Windows Vista)
- двигаться
- путь
- пауза
- требовать
- быстрый
- толчок
- р-д
- рем
- Рен
- переименовывать
- rmdir
- набор
- setlocal
- сдвиг
- начинать
- время
- заголовок
- тип
- видеть
- проверять
- том
Windows CE
[ редактировать ]Следующий список команд поддерживается cmd.exe в Windows CE .NET 4.2, [14] Windows CE 5.0 [15] и Windows Embedded CE 6.0: [16]
- атрибут
- вызов
- компакт-диск
- чдир
- клс
- копировать
- дата
- принадлежащий
- ты
- эхо
- стереть
- Выход
- перейти к
- помощь
- если
- Мэриленд
- мкдир
- двигаться
- путь
- пауза
- быстрый
- страдающий
- р-д
- рем
- Рен
- переименовывать
- rmdir
- набор
- сдвиг
- начинать
- время
- заголовок
- тип
Кроме того, net -команда доступна как внешняя команда, хранящаяся в \Windows\net.exe .
РеактОС
[ редактировать ]Реализация ReactOS включает следующие внутренние команды: [2]
- ?
- псевдоним
- доцент
- звуковой сигнал
- вызов
- компакт-диск
- чдир
- выбор
- клс
- цвет
- копировать
- ctty
- дата
- принадлежащий
- удалить
- задерживать
- ты
- сказать
- эхо
- эхо
- эхоэрр
- эхосерр
- локальный
- стереть
- Выход
- для
- бесплатно
- перейти к
- история
- если
- память
- Мэриленд
- мкдир
- мклинк
- двигаться
- путь
- пауза
- требовать
- быстрый
- толчок
- р-д
- rmdir
- рем
- Рен
- переименовывать
- заменять
- экран
- набор
- setlocal
- сдвиг
- начинать
- время
- таймер
- заголовок
- тип
- видеть
- проверять
- том
Сравнение с COMMAND.COM
[ редактировать ]В Windows, cmd.exe в основном совместим с COMMAND.COM , но предоставляет следующие расширения:
- Более подробные сообщения об ошибках, чем сообщение « Неверная команда или имя файла » (в случае неверных команд) КОМАНД.КОМ . В OS/2 сообщения об ошибках сообщаются на выбранном языке системы, а их текст берется из файлов системных сообщений. Затем можно выдать команду HELP с номером сообщения об ошибке для получения дополнительной информации.
- Поддерживает использование клавиш со стрелками для прокрутки истории команд. (В DOS эта функция была доступна только в DR DOS (через HISTORY ), а позже через внешний компонент под названием ДОСКИ .)
- Добавляет чередующееся завершение командной строки для путей к файлам и папкам, где пользователь может циклически просматривать результаты для префикса, используя Tab ↹, и ⇧ Shift+ Tab ↹ для обратного направления.
- Обрабатывает символ каретки ( ^ ) как escape-символ ; следующий за ним символ следует понимать буквально. Есть специальные символы cmd.exe и COMMAND.COM , которые предназначены для изменения поведения процессора командной строки. Символ каретки заставляет процессор командной строки интерпретировать их буквально.
- Поддерживает отложенное расширение переменных с
SETLOCAL EnableDelayedExpansion
, что позволяет вычислять значения переменных во время выполнения, а не во время анализа сценария перед выполнением (Windows 2000 и более поздние версии), исправляя идиомы DOS, которые делали использование структур управления трудным и сложным. [17] Расширения можно отключить, обеспечивая более строгий режим совместимости.
Внутренние команды также были улучшены:
- The Команда DELTREE была объединена в команду командование РД , в составе его /S переключатель .
- Установить локальный и Команды EndLocal ограничивают объем изменений в среде. Изменения, внесенные в среду командной строки после Команды SetLocal являются локальными для пакетного файла . Команда EndLocal восстанавливает предыдущие настройки. [18]
- The Команда вызова позволяет выполнять подпрограммы в пакетном файле. Вызов команды в COMMAND.COM поддерживает вызов только внешних пакетных файлов.
- Расширения парсера имен файлов до Команда Set сравнима с оболочкой C. [ нужны дальнейшие объяснения ]
- The Команда Set может выполнять оценку выражения .
- Расширение Команда For поддерживает анализ файлов и произвольных наборов в дополнение к именам файлов.
- Новый ПушД и Команды PopD обеспечивают доступ к предыдущим путям навигации, аналогично кнопкам «вперед» и «назад» в веб-браузере или проводнике .
- Условное Команда IF может выполнять сравнения без учета регистра , а также числовые сравнения на равенство и неравенство в дополнение к сравнению строк с учетом регистра. (Это было доступно в DR-DOS, но не в PC DOS или MS-DOS .)
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Примечания по использованию командного процессора OS/2 по умолчанию (CMD.EXE)» . www.tavi.co.uk.
- ^ Jump up to: а б с «реактос/реактос» . Гитхаб . 4 декабря 2021 г.
- ^ «Командная оболочка процессора (Windows CE .NET 4.2)» . Документы Майкрософт . 30 июня 2006 г. Архивировано из оригинала 31 августа 2022 г.
- ^ «Командная оболочка процессора (Windows CE 5.0)» . Документы Майкрософт . 14 сентября 2012 г. Архивировано из оригинала 28 августа 2022 г.
- ^ «Командная оболочка процессора (Windows Embedded CE 6.0)» . Документы Майкрософт . 2012. Архивировано из оригинала 5 сентября 2022 года.
- ^ Закари, Дж. Паскаль (1994). Шоу-стоппер! Головокружительная гонка за создание Windows NT и следующего поколения в Microsoft . Свободная пресса . ISBN 0-02-935671-7 .
- ^ Дуглас МакКоннохи Болинг (2001). Программирование Microsoft Windows CE (2-е изд.). Майкрософт Пресс . ISBN 978-0735614437 .
- ^ Jump up to: а б "коммд" . Microsoft Learn . 12 сентября 2023 г. Архивировано из оригинала 21 ноября 2023 г.
- ^ [Амбала «Это хорошо для всех»].
{{cite web}}
: Проверять|url=
значение ( помощь ) CS1 maint: статус URL ( ссылка ) - ^ «Перенаправление команд, каналы — Windows CMD — SS64.com» . ss64.com . Проверено 23 сентября 2021 г.
- ^ Ограничение строки командной строки командной строки (Cmd.exe)
- ^ Справочник пользователя по операционной системе Microsoft/2 (PDF) . Майкрософт . 1987.
- ^ Хилл, Тим (1998). Сценарии оболочки Windows NT . Техническое издательство Macmillan . ISBN 978-1578700479 .
- ^ «Команды командного процессора (Windows CE .NET 4.2)» . Документы Майкрософт . 30 июня 2006 г. Архивировано из оригинала 31 августа 2022 г.
- ^ «Команды командного процессора (Windows CE 5.0)» . Документы Майкрософт . 14 сентября 2012 г. Архивировано из оригинала 31 августа 2022 г.
- ^ «Команды командного процессора (Windows Embedded CE 6.0)» . Документы Майкрософт . 5 января 2012 г. Архивировано из оригинала 6 сентября 2022 г.
- ^ «Windows 2000 задержало расширение переменных среды» . Windows ИТ-специалист . Архивировано из оригинала 13 июля 2015 года . Проверено 13 июля 2015 г.
- ^ «Сетлокал» . ТехНет . Майкрософт . 11 сентября 2009 года . Проверено 13 января 2015 г.
Дальнейшее чтение
[ редактировать ]- Дэвид Московиц; Дэвид Керр (1994). OS / 2 2.11 Unleashed (2-е изд.). Издательство Самс . ISBN 978-0672304453 .
- Станек, Уильям Р. (2008). Карманный консультант администратора командной строки Windows (2-е изд.). Майкрософт Пресс . ISBN 978-0735622623 .
Внешние ссылки
[ редактировать ]- «Ссылка на командную строку AZ» . Майкрософт . 26 апреля 2023 г.
- «Командный» . Документация по продукту Microsoft Windows XP . Майкрософт . Архивировано из оригинала 2 сентября 2011 года . Проверено 24 мая 2006 г.
- «Командная строка: часто задаваемые вопросы» . Справка по Windows . Майкрософт . Архивировано из оригинала 22 апреля 2015 года . Проверено 20 апреля 2015 г.
- «Индекс A–Z командной строки Windows CMD» . SS64.com.
- «Windows CMD.com — центр команд Windows» . windowscmd.com. Архивировано из оригинала 11 января 2022 года . Проверено 4 января 2022 г.
- Наиболее важные команды CMD в Windows - colorconsole.de