Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

cmd.exe - это интерпретатор командной строки по умолчанию для операционных систем OS / 2 , [1] eComStation , ArcaOS , Microsoft Windows ( семейство Windows NT и Windows CE ) и ReactOS [2] . Имя относится к его исполняемому имени файла. Его также обычно называют cmd или Командная строка , имея в виду заголовок окна по умолчанию в Windows. Реализации различаются в разных системах, но поведение и базовый набор команд в целом одинаковы. cmd.exe является аналогом COMMAND.COMв системах DOS и Windows 9x и аналогично оболочкам Unix, используемым в Unix-подобных системах. Первоначальная версия cmd.exe для Windows NT была разработана Терезой Стоуэлл. [3] Windows CE 2.11 была первым встроенным выпуском Windows, который поддерживал консоль и версию cmd.exe для Windows CE . [4] В Windows CE .NET 4.2 , [5] Windows CE 5.0 [6] и Windows Embedded CE 6.0 [7] это также называется оболочкой командного процессора . Реализация ReactOS cmd.exe является производным от FreeCOM, интерпретатора командной строки FreeDOS . [2]

Операция [ править ]

cmd.exe взаимодействует с пользователем через интерфейс командной строки . В Windows этот интерфейс реализован через консоль Win32 . cmd.exe может использовать функции, доступные для собственных программ на его собственной платформе. Например, OS / 2 и Windows, он может использовать реальные трубы в командных трубопроводов, что позволяет обеим сторонам трубопровода могут работать одновременно. В результате можно перенаправить стандартный поток ошибок . ( COMMAND.COM использует временные файлы и последовательно запускает обе стороны, одну за другой.)

Несколько команд можно обрабатывать в одной командной строке с помощью разделителя команд && . [8] Например:

C : \ > CommandA && CommandB && CommandC

В Windows XP или более поздней версии максимальная длина строки, которая может использоваться в командной строке, составляет 8191 символ. В более ранних версиях, таких как Windows 2000 или Windows NT 4.0 , максимальная длина строки составляет 2047 символов. Это ограничение включает командную строку, отдельные переменные среды , которые наследуются другими процессами , и все расширения переменных среды. [9]

Кавычки необходимы для следующих специальных символов : [8]

& <> [] {} ^ =; ! '+, `~ [пробел]

Внутренние команды [ править ]

OS / 2 [ править ]

Окно OS / 2 (cmd.exe) в Microsoft OS / 2 версии 1.3

Ниже приведен список внутренних команд cmd.exe в Microsoft OS / 2 : [10]

  • перемена
  • chcp
  • CD
  • чдир
  • cls
  • копировать
  • Дата
  • дель
  • отделить
  • реж
  • dpath
  • эхо
  • стереть
  • выход
  • за
  • идти к
  • если
  • мкр
  • mkdir
  • дорожка
  • Пауза
  • Подсказка
  • rd
  • rem
  • Ren
  • переименовать
  • rmdir
  • набор
  • сдвиг
  • Начните
  • время
  • тип
  • вер
  • проверять
  • объем

Семейство Windows NT [ править ]

cmd.exe в Windows 7

Следующий список внутренних команд поддерживается cmd.exe в Windows NT и более поздних версиях: [11]

  • ассоциированный
  • перемена
  • вызов
  • CD
  • чдир
  • cls
  • цвет
  • копировать
  • Дата
  • дель
  • реж
  • dpath
  • эхо
  • endlocal
  • стереть
  • выход
  • за
  • ftype
  • идти к
  • если
  • ключи
  • мкр
  • mkdir
  • mklink (введено в Windows Vista)
  • двигаться
  • дорожка
  • Пауза
  • popd
  • Подсказка
  • толкать
  • rd
  • rem
  • Ren
  • переименовать
  • rmdir
  • набор
  • setlocal
  • сдвиг
  • Начните
  • время
  • заглавие
  • тип
  • вер
  • проверять
  • объем

Windows CE [ править ]

Pocket CMD v 3.0 (cmd.exe) в Windows CE 3.0

Следующий список команд поддерживается cmd.exe в Windows CE .NET 4.2, [12] Windows CE 5.0 [13] и Windows Embedded CE 6.0: [14]

  • аттриб
  • вызов
  • CD
  • чдир
  • cls
  • копировать
  • Дата
  • дель
  • реж
  • эхо
  • стереть
  • выход
  • идти к
  • помощь
  • если
  • мкр
  • mkdir
  • двигаться
  • дорожка
  • Пауза
  • Подсказка
  • pwd
  • rd
  • rem
  • Ren
  • переименовать
  • rmdir
  • набор
  • сдвиг
  • Начните
  • время
  • заглавие
  • тип

Кроме того, команда net доступна как внешняя команда, хранящаяся в \ Windows \ net.exe .

ReactOS [ править ]

Командная строка (cmd.exe) в ReactOS

Реализация ReactOS включает следующие внутренние команды: [2]

  • ?
  • псевдоним
  • ассоциированный
  • писк
  • вызов
  • CD
  • чдир
  • выбор
  • cls
  • цвет
  • копировать
  • ctty
  • Дата
  • дель
  • Удалить
  • задерживать
  • реж
  • dirs
  • эхо
  • эхо
  • эхо
  • эхосер
  • endlocal
  • стереть
  • выход
  • за
  • свободный
  • идти к
  • история
  • если
  • объем памяти
  • мкр
  • mkdir
  • mklink
  • двигаться
  • дорожка
  • Пауза
  • popd
  • Подсказка
  • толкать
  • rd
  • rmdir
  • rem
  • Ren
  • переименовать
  • заменять
  • экран
  • набор
  • setlocal
  • сдвиг
  • Начните
  • время
  • таймер
  • заглавие
  • тип
  • вер
  • проверять
  • объем

Сравнение с COMMAND.COM [ править ]

В Windows cmd.exe в основном совместим с COMMAND.COM, но имеет следующие расширения:

  • Более подробные сообщения об ошибках, чем бланк « Неверная команда или имя файла » (в случае некорректных команд) COMMAND.COM . В OS / 2 сообщения об ошибках сообщаются на выбранном языке системы, их текст берется из файлов системных сообщений. Затем можно ввести команду HELP с номером сообщения об ошибке для получения дополнительной информации.
  • Поддерживает использование клавиш со стрелками для прокрутки истории команд. (Под DOS эта функция была доступна только под DR DOS (через HISTORY ), а затем через внешний компонент под названием DOSKEY .)
  • Добавляет завершение командной строки для путей к файлам и папкам.
  • Обрабатывает символ вставки ( ^ ) как escape-символ ; следующий за ним персонаж следует понимать буквально. В cmd.exe и COMMAND.COM есть специальные символы (например, « < », « > » и «|»), которые предназначены для изменения поведения процессора командной строки. Символ каретки заставляет процессор командной строки интерпретировать их буквально.
  • Поддерживает отложенное расширение переменных с помощью SETLOCAL EnableDelayedExpansion, позволяя вычислять значения переменных во время выполнения, а не во время синтаксического анализа скрипта перед выполнением (Windows 2000 и новее), исправляя идиомы DOS, которые затрудняли и усложняли использование структур управления . [15] Расширения можно отключить, чтобы обеспечить более строгий режим совместимости.

Также были улучшены внутренние команды:

  • DELTREE команда была слита в RD команды, как часть его / S выключателя .
  • Команды SetLocal и EndLocal ограничивают объем изменений в среде. Изменения, внесенные в среду командной строки после команд SetLocal, являются локальными для командного файла . Команда EndLocal восстанавливает предыдущие настройки. [16]
  • Команда Call позволяет выполнять подпрограммы в пакетном файле. Команда Call в COMMAND.COM поддерживает только вызов внешних командных файлов.
  • Имя файла анализатор расширение для Set команд сопоставимы с C оболочкой . [ требуется дальнейшее объяснение ]
  • Команда Set может выполнять оценку выражения .
  • Расширение команды For поддерживает синтаксический анализ файлов и произвольных наборов в дополнение к именам файлов.
  • Новые команды PushD и PopD обеспечивают доступ к предыдущим пройденным путям, аналогично кнопкам «вперед» и «назад» в веб-браузере или проводнике .
  • Команда условного IF может выполнять сравнения без учета регистра и сравнения числовых равенств и неравенств в дополнение к сравнениям строк с учетом регистра. (Это было доступно в DR-DOS, но не в PC DOS или MS-DOS .)

См. Также [ править ]

  • Сравнение командных оболочек
  • Список команд DOS
  • PowerShell
  • Терминал Windows

Ссылки [ править ]

  1. ^ "Примечания по использованию командного процессора OS / 2 по умолчанию (CMD.EXE)" . www.tavi.co.uk .
  2. ^ a b c "reactos / reactos" . GitHub .
  3. Перейти ↑ Zachary, G. Pascal (1994). Showstopper! Бешеная гонка за создание Windows NT и следующее поколение в Microsoft . Свободная пресса . ISBN 0-02-935671-7.
  4. ^ Дуглас McConnaughey Boling (2001). Программирование Microsoft Windows CE (2-е изд.). Microsoft Press . ISBN 978-0735614437.
  5. ^ «Оболочка командного процессора (Windows CE .NET 4.2)» . docs.microsoft.com .
  6. ^ «Оболочка командного процессора (Windows CE 5.0)» . docs.microsoft.com .
  7. ^ «Оболочка командного процессора (Windows Embedded CE 6.0)» . docs.microsoft.com .
  8. ^ a b "cmd" . docs.microsoft.com .
  9. ^ Командная строка (Cmd. Exe) ограничение строки командной строки
  10. ^ Справочник пользователя по операционной системе Microsoft / 2 (PDF) . Microsoft . 1987 г.
  11. ^ Хилл, Тим (1998). Сценарии оболочки Windows NT . Macmillan Technical Publishing . ISBN 978-1578700479.
  12. ^ «Команды командного процессора (Windows CE .NET 4.2)» . docs.microsoft.com .
  13. ^ «Команды командного процессора (Windows CE 5.0)» . docs.microsoft.com .
  14. ^ «Команды командного процессора (Windows Embedded CE 6.0)» . docs.microsoft.com .
  15. ^ "Windows 2000 отложила расширение переменной среды" . Windows для ИТ-специалистов . Архивировано из оригинала на 2015-07-13 . Проверено 13 июля 2015 .
  16. ^ "Setlocal" . TechNet . Microsoft . Проверено 13 января 2015 .

Дальнейшее чтение [ править ]

  • Дэвид Московиц; Дэвид Керр (1994). OS / 2 2.11 Unleashed (2-е изд.). Самс Паблишинг . ISBN 978-0672304453.
  • Станек, Уильям Р. (2008). Карманный консультант администратора командной строки Windows (2-е изд.). Microsoft Press . ISBN 978-0735622623.

Внешние ссылки [ править ]

  • «Список команд Windows от А до Я» . Microsoft .
  • "Cmd" . Документация по продукту Microsoft Windows XP . Microsoft . Архивировано из оригинала на 2011-09-02 . Проверено 24 мая 2006 .
  • «Командная строка: часто задаваемые вопросы» . Справка Windows . Microsoft . Архивировано из оригинала на 2015-04-22 . Проверено 20 апреля 2015 .
  • «Индекс от А до Я командной строки Windows CMD» . SS64.com.