COMMAND.COM

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 28. února 2022; kontroly vyžadují 4 úpravy .
COMMAND.COM
Typ příkazový interpret
Vývojář Seattle Computer Products , Microsoft , IBM , Novell atd.
Operační systém DOS ( MS-DOS , DR-DOS , FreeDOS atd.), OS/2 , Windows 9x atd.
Jazyky rozhraní Vícejazyčný

COMMAND.COM  je interpret příkazového řádku pro operační systémy DOS , OS/2 , Windows 9x family a řadu dalších. Načte se při spuštění systému nebo VDM (pokud není zadán jiný interpret pomocí direktivy SHELL= v souboru CONFIG.SYS ) a spouští příkazy ze souboru AUTOEXEC.BAT . [jeden]

V operačních systémech rodiny Windows NT (počínaje Windows NT 3.1 a konče Windows 11 / Windows Server 2012 ) a OS/2 je interpretem příkazového řádku program cmd.exe . Z důvodu kompatibility s aplikacemi pro DOS je však COMMAND.COM přítomen i ve verzích těchto systémů pro procesory architektury IA-32 .

Provozní režimy

COMMAND.COM má dva režimy provozu. První režim je interaktivní , kdy uživatel zadává příkazy z klávesnice, které jsou okamžitě provedeny. Druhý režim je dávkový , kdy COMMAND.COM provádí sekvenci příkazů dříve uložených v dávkovém souboru s příponou .BAT . Funkce COMMAND.COM jsou podobné funkcím tlumočníků příkazů na operačních systémech kompatibilních s Unixem (např . bash ), s tím rozdílem, že COMMAND.COM má omezenější sadu funkcí. [2] [3]

Příkazy

Příkazy COMMAND.COM se dělí na interní a externí. Interní příkazy podporuje samotný COMMAND.COM , externí příkazy jsou soubory , které jsou uloženy na discích a mají příponu .COM , .EXE nebo .BAT . [4] [5]

Některé z interních příkazů se používají v dávkových souborech k jejich navrhování, organizaci jejich práce a řízení sekvence provádění dalších příkazů. Mezi nimi:

: název_štítku Nastavte název štítku pro příkaz GOTO. Často se používá jako komentář. PRO Opakujte některý příkaz pro každý soubor z daného seznamu. JÍT DO Přejít na štítek v dávkovém souboru. REM Komentář: Jakýkoli text na řádku po tomto příkazu je ignorován. LI Nastavení podmínky v závislosti na tom, které různé příkazy se provádějí. VOLÁNÍ Pozastavení provádění aktuálního příkazového souboru, spuštění dalšího, po skončení volaného souboru, obnovení provádění aktuálního souboru. [6] START Spustí spustitelný nebo dávkový soubor zadaný v tomto parametru příkazu bez čekání na dokončení jeho spuštění (pouze Windows).

Proměnné

Dávkové soubory pro COMMAND.COM mají čtyři typy proměnných:

  1. ERRORLEVEL obsahuje návratový kód posledního spuštěného programu (např. v programovacím jazyce C lze kód vrátit pomocí returnfunkce main ). [7] [8] ERRORLEVEL se obvykle používá k označení chyb při běhu programu a kód 0 znamená úspěšné dokončení. To se ale týká hlavně utilit příkazového řádku (které jsou orientované na použití v dávkových souborech), aplikační programy se většinou nestarají o vracení konkrétních hodnot, takže za nimi v ERRORLEVEL je vždy nulová hodnota nebo dokonce smetí. [9] [10] V původním COMMAND.COM bylo možné návratový kód zkontrolovat pouze pomocí konstruktu IF ERRORLEVEL[11] , nicméně v některých klonech DOSu a také Windows z rodiny NT byla možnost přístupu k ERRORLEVEL jako byla přidána běžná proměnná. [12] [13]
  2. Proměnné lze nastavit příkazem SET. [14] Chcete-li získat jejich hodnotu, musíte název proměnné obklopit znaky % (například %path%), v tomto případě bude hodnota proměnné nahrazena v místě, kde je taková konstrukce použita. [15] Některé z těchto proměnných jsou standardizované ( PROMPT , PATH , TEMP atd.), některé nastavuje systém ( CONFIG ), jiné nastavují a používají uživatelé. Tyto proměnné jsou uloženy v "prostředí" a nazývají se "proměnné prostředí". [16]
  3. Argumenty dávkového souboru v samotných dávkových souborech jsou dostupné jako %1 ... %9 . [17] Proměnná %0 obsahuje text příkazu (bez argumentů) použitého ke spuštění dávkového souboru. [osmnáct]
  4. Proměnné pro příkaz FORmají tvar %%a a používají se v dávkových souborech ve spojení s tímto příkazem. [osmnáct]

Možnosti příkazového řádku

COMMAND.COM může být spuštěn nejen během bootování, ale jako každý spustitelný soubor MS-DOS i jiným programem pomocí standardní funkce MS-DOS EXEC (funkce 4bH přerušení 21H). Při spuštění bez parametrů se spustí instance interpretu a řízení se předá uživateli, který může tuto instanci zavřít a vrátit řízení programu, který ji vytvořil, zadáním příkazu EXIT. Ale mnohem běžnější je spouštět COMMAND.COM z jiných programů s možnostmi /C a (méně často) /K.

Možnost /C

Možnost /C je pro spuštění v dávkovém režimu. Syntaxe běhu: Příkaz může být jakýkoli interní nebo externí příkaz COMMAND.COM, včetně souboru BAT. Po provedení příkazu je COMMAND.COM ukončen a řízení je vráceno programu, který jej vygeneroval. COMMAND.COM /C команда

Možnost /K

Volba /K je zcela analogická s volbou /C s tím rozdílem, že po provedení příkazu není instance interpretru ukončena a řízení je přeneseno na uživatele, který může tuto instanci zavřít a vrátit řízení programu, který zplodil to vydáním příkazu EXIT.

Viz také

Poznámky

  1. Q95554: Nepoužívá se přepínač /P s  příkazem SHELL . Microsoft (18. ledna 2007). — Viz: Základní informace o SHELL a /P. Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  2. 5.2  Spuštění příkazu . GNU Make Manuál . Delorie (červen 2003). "Skladový shell, ,command.com', má směšně omezenou funkčnost a mnoho uživatelů make má tendenci instalovat náhradní shell." Datum přístupu: 16. ledna 2010. Archivováno z originálu 19. července 2008.
  3. "dávkové soubory jsou mnohem omezenější než jejich protějšky UNIX" // Colin Ritchie. Uživatelské rozhraní // Operační systémy zahrnující UNIX a Windows. - 4. vyd. - Cengage Learning EMEA, 2003. - S. 41. - 279 s. — ISBN 0-82-646416-5 , ISBN 978-0-8264-6416-3 . . - "dávkové soubory jsou mnohem omezenější než jejich protějšky UNIX".
  4. Q71986: Interní a externí  příkazy MS-DOS 5.0 . Microsoft (3. prosince 1999). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  5. Dávkové  příkazy . Knihovna TechNet → MS-DOS . Microsoft. Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  6. Pokud zavoláte další dávkový soubor z dávkového souboru přímo, bez použití příkazu CALL, pak se volaný dávkový soubor nevrátí, nahradí první dávkový soubor.
  7. Q57658: Nastavení úrovně chyb MS-DOS v  programu . Microsoft (12. května 2003). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  8. Návratové hodnoty Main() (C# Programming Guide  ) . Microsoft (červenec 2009). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  9. Q81819: Kódy ukončení nebo úrovně chyb nastavené  příkazy MS-DOS . Microsoft (16. listopadu 2006). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  10. Q41533: Basic 7.00 může vrátit výstupní kód (úroveň chyby) do dávkového  souboru . Microsoft (21. listopadu 2006). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  11. Q69576: Testování specifické úrovně chyb v dávkových  souborech . Microsoft (16. listopadu 2006). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  12. Použití systémových  informací . Caldera DR-DOS 7.03 Uživatelská příručka → Kapitola 7 Dávkové zpracování . Caldera (1998). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  13. Pokud  . _ Dokumentace k produktu Windows XP Professional . Microsoft. Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  14. Nastavit  . _ Knihovna TechNet → MS-DOS . Microsoft. — Popis příkazu SET. Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  15. Q41246: Jak používat substituci proměnné prostředí v dávkových  souborech . Microsoft (10. května 2003). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  16. Q69846: Popis tabulky prostředí DOS;  Prohlášení Basic 's ENVIRON . Microsoft (16. srpna 2005). - Technické detaily realizace prostředí. Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  17. Shift  . _ Knihovna TechNet → MS-DOS . Microsoft. — Popis příkazu SHIFT. Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.
  18. 1 2 Q75634: Znaky procent odstraněny z  textu dávkového souboru . Microsoft (10. května 2003). Datum přístupu: 15. ledna 2010. Archivováno z originálu 14. února 2012.

Odkazy