COMMAND.COM

COMMAND.COM
COMMAND.COM
Тип

Командный интерпретатор

Разработчик

Seattle Computer Products, Microsoft, IBM, Novell и др.

Операционная система

DOS (MS-DOS, DR-DOS, FreeDOS и т. д.), OS/2, Windows 9x и др.

Языки интерфейса

Мультиязычный

COMMAND.COM — интерпретатор командной строки в операционных системах DOS, OS/2, семейства Windows 9x и ряда других. Загружается при старте системы или VDM (если не указан другой интерпретатор с помощью директивы SHELL= в файле CONFIG.SYS) и выполняет команды из файла AUTOEXEC.BAT.[1]

В операционных системах Windows NT/2000/XP/2003 и OS/2 интерпретатором командной строки является программа cmd.exe. Однако, для совместимости с DOS-приложениями, COMMAND.COM присутствует и в этих системах.

Содержание

Режимы работы

COMMAND.COM имеет два режима работы. Первый режим — интерактивный, когда пользователь вводит с клавиатуры команды, которые немедленно выполняются. Второй режим — пакетный, когда COMMAND.COM выполняет последовательность команд, заранее сохранённую в пакетном файле с расширением .BAT. Функции COMMAND.COM аналогичны функциям командных интерпретаторов Unix-совместимых операционных систем (например, bash), с тем отличием, что COMMAND.COM имеет более ограниченный набор возможностей.[2][3]

Команды

Команды COMMAND.COM делятся на внутренние, и внешние. Внутренние команды поддерживаются самим COMMAND.COM, внешние команды являются файлами, которые хранятся на дисках и имеют расширение .COM, .EXE или .BAT.[4][5]

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

:имя_метки 
Задание имени метки для команды GOTO. Часто используется и в качестве комментария.
FOR 
Повтор некоторой команды для каждого файла из заданного списка.
GOTO 
Переход к метке внутри пакетного файла.
REM 
Комментарий: любой текст в строке после этой команды игнорируется.
IF 
Задание условия, в зависимости от которого происходит выполнение разных команд.
CALL 
Приостановка выполнения текущего командного файла, запуск другого, по окончании работы вызванного файла возобновление выполнения текущего файла.[6]
START 
Запуск исполняемого или командного файла, указанного в параметре этой команды, без ожидания завершения его выполнения.

Переменные

Пакетные файлы для COMMAND.COM имеют четыре типа переменных:

  1. ERRORLEVEL содержит код возврата последней из запущенных программ (к примеру, в языке программирования Си код можно вернуть с помощью return в функции main).[7][8] Как правило, ERRORLEVEL используется для индикации ошибок при работе программы и код 0 означает успешное завершение. Но это относится в основном к утилитам командной строки (которые ориентированы на использование в пакетных файлах), прикладные программы обычно не заботятся о возврате конкретных значений, поэтому после них в ERRORLEVEL всегда оказывается нулевое значение или даже мусор.[9][10] В оригинальном COMMAND.COM код возврата можно было проверить только с помощью конструкции IF ERRORLEVEL[11], однако в некоторых клонах DOS, а также Windows семейства NT, добавлена возможность обращения к ERRORLEVEL как к обычной переменной.[12][13]
  2. Переменные могут быть заданы с помощью команды SET.[14] Чтобы получить их значение, нужно имя переменной окружить знаками % (например, %path%), в этом случае в месте использования такой конструкции будет подставлено значение переменной.[15] Некоторые из этих переменных стандартизованы (PROMPT, PATH, TEMP и т. п.), некоторые задаются системой (CONFIG), остальные задаются и используются пользователями. Хранятся эти переменные в «окружении» (environment) и называются «переменными окружения».[16]
  3. Аргументы пакетных файлов в самих пакетных файлах доступны как %1%9.[17] Переменная %0 содержит текст команды (без аргументов), использованной для запуска пакетного файла.[18]
  4. Переменные для команды FOR имеют вид %%a и используются в пакетных файлах совместно с этой командой.[18]

См. также

Примечания

  1. Q95554: Not Using the /P Switch with the SHELL Command  (англ.). Microsoft (18 января 2007). — См.: Background Information on SHELL and /P. Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  2. 5.2 Command Execution  (англ.). GNU Make Manual. Delorie (англ.) (июнь 2003). — «The stock shell, `command.com', is ridiculously limited in its functionality and many users of make tend to install a replacement shell»  Проверено 16 января 2010.
  3. «batch files are much more limited than their UNIX counterparts» // Colin Ritchie. User Interface // Operating systems incorporating UNIX and Windows. — 4-е изд. — Cengage Learning EMEA, 2003. — P. 41. — 279 p. — ISBN 0-82-646416-5, ISBN 978-0-8264-6416-3
  4. Q71986: MS-DOS 5.0 Internal and External Commands  (англ.). Microsoft (3 декабря 1999). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  5. Batch Commands  (англ.). TechNet Library → MS-DOS. Microsoft. Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  6. Если вызвать из пакетного файла другой пакетный файл напрямую, без помощи команды CALL, то возврата из вызванного пакетного файла не будет, он заменит первый пакетный файл.
  7. Q57658: Setting the MS-DOS Errorlevel in a Program  (англ.). Microsoft (12 мая 2003). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  8. Main() Return Values (C# Programming Guide)  (англ.). Microsoft (июль 2009). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  9. Q81819: Exit Codes or Errorlevels Set by MS-DOS Commands  (англ.). Microsoft (16 ноября 2006). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  10. Q41533: Basic 7.00 Can Return Exit Code (Error Level) to Batch File  (англ.). Microsoft (21 ноября 2006). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  11. Q69576: Testing for a Specific Error Level in Batch Files  (англ.). Microsoft (16 ноября 2006). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  12. Using System Information  (англ.). Caldera DR-DOS 7.03 User Guide → Chapter 7 Batch Processing. Caldera (1998). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  13. If  (англ.). Windows XP Professional Product Documentation. Microsoft. Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  14. Set  (англ.). TechNet Library → MS-DOS. Microsoft. — Описание команды SET. Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  15. Q41246: How to Use Environment Variable Substitution in Batch Files  (англ.). Microsoft (10 мая 2003). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  16. Q69846: DOS Environment Table Description; Basic’s ENVIRON Statement  (англ.). Microsoft (16 августа 2005). — Технические детали реализации окружения. Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  17. Shift  (англ.). TechNet Library → MS-DOS. Microsoft. — Описание команды SHIFT. Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.
  18. 1 2 Q75634: Percent Signs Stripped from Batch File Text  (англ.). Microsoft (10 мая 2003). Архивировано из первоисточника 14 февраля 2012. Проверено 15 января 2010.

Ссылки

  • Урок bat-аники RSDN
  • MDGx / AXCEL216. COMMAND.COM  (англ.). Windows 95/98/NT4/2000/ME/XP/2003 + DOS 7.xx/8.00 Tricks + Secrets Files. — Список всех опций COMMAND.COM, включая недокументированные. Проверено 16 января 2010.

Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Полезное


Смотреть что такое "COMMAND.COM" в других словарях:

  • COMMAND.COM — Developer(s) Seattle Computer Products, Microsoft Corporation, IBM, Novell and several others. Operating system DR DOS, FreeDOS, MS DOS, Novell DOS, OpenDOS, PC DOS, PTS DOS, ROM DOS, 86 DOS, Microsoft Windows (Windows 95 Wi …   Wikipedia

  • Command.com — Die command.com ist der Kommandozeileninterpreter (CLI) der DOS Betriebssysteme, also insbesondere des Microsoft Betriebssystems MS DOS, sowie der darauf basierenden Systeme Microsoft Windows 95, 98, 98 SE und Me, sowie IBM DOS/PC DOS. Neben der… …   Deutsch Wikipedia

  • COMMAND.COM — Die COMMAND.COM ist der Kommandozeileninterpreter des Microsoft Betriebssystems MS DOS, sowie der darauf basierenden Systeme Microsoft Windows 95, 98, 98 SE und ME. Neben der Variante von Microsoft gab oder gibt es auch Entsprechungen in den MS… …   Deutsch Wikipedia

  • Command line completion — is a common feature of command line interpreters, in which the program automatically fills in partially typed tokens. Depending on the specific interpreter and its configuration, these elements may include commands, arguments, environment… …   Wikipedia

  • Command — Com*mand (?; 61), v. t. [imp. & p. p. {Commanded}; p. pr. & vb. n. {Commanding}.] [OE. comaunden, commanden, OF. comander, F. commander, fr. L. com + mandare to commit to, to command. Cf. {Commend}, {Mandate}.] 1. To order with authority; to lay… …   The Collaborative International Dictionary of English

  • Command — may refer to: Command (computing), a statement in a computer language COMMAND.COM, the default operating system shell and command line interpreter for DOS Command (military formation), an organizational unit Command key, a modifier key on Apple… …   Wikipedia

  • Command — Com*mand , n. 1. An authoritative order requiring obedience; a mandate; an injunction. [1913 Webster] Awaiting what command their mighty chief Had to impose. Milton. [1913 Webster] 2. The possession or exercise of authority. [1913 Webster]… …   The Collaborative International Dictionary of English

  • Com — steht für: Com (Osttimor), Ortschaft in Osttimor com! Das Computer Magazin, Computerzeitschrift das Sternbild Haar der Berenike (lat. Coma Berenices ) in der Nomenklatur der Fixsterne Die Abkürzung com, COM steht für: collectivités d outre mer,… …   Deutsch Wikipedia

  • COM — steht für: Com (Osttimor), Ortschaft in Osttimor com! Das Computer Magazin, Computerzeitschrift das Sternbild Haar der Berenike (lateinisch: Coma Berenices) in der Nomenklatur der Fixsterne Die Abkürzung com, COM steht für: collectivités d’outre… …   Deutsch Wikipedia

  • Command — Com*mand , v. i. 1. To have or to exercise direct authority; to govern; to sway; to influence; to give an order or orders. [1913 Webster] And reigned, commanding in his monarchy. Shak. [1913 Webster] For the king had so commanded concerning… …   The Collaborative International Dictionary of English

  • Command Prompt — For other uses, see Command prompt (disambiguation). CMD redirects here. For other uses, see CMD (disambiguation). Command Prompt A component of Microsoft Windows …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»