Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Spustí novou instanci interpretu příkazu cmd.exe. Pokud se používá bez parametrů, cmd zobrazí informace o verzi a autorských právech operačního systému.
Note
Uživatelům, kteří hledají pokročilejší funkce, doporučujeme prozkoumat PowerShell pro vylepšené skriptování a automatizaci.
Syntax
cmd [/c|/k] [/s] [/q] [/d] [/a|/u] [/t:{<b><f> | <f>}] [/e:{on | off}] [/f:{on | off}] [/v:{on | off}] [<string>]
Parameters
| Parameter | Description |
|---|---|
| /c | Provede příkaz určený příkazem <string> a potom ukončí procesor příkazů. |
| /k | Provede příkaz určený <string> a zachová procesor příkazů spuštěný. |
| /s | Při použití s /c nebo /k, aktivuje speciální neanalyzující pravidla, která odstraní první a poslední uvozovky (") kolem <string> , ale zbytek příkazu zůstane beze změny. |
| /q | Vypne ozvěnu. |
| /d | Zakáže spouštění příkazů AutoRun. |
| /a | Formátuje výstup příkazu jako American National Standards Institute (ANSI). |
| /u | Formátuje výstup příkazu jako Unicode. |
/t:{<b><f> | <f>} |
Nastaví barvy pozadí (b) a popředí (f). |
| /e:on | Povolí rozšíření příkazů. |
| /e:off | Zakáže rozšíření příkazů. |
| /f:on | Povolí dokončování názvů souborů a adresářů. |
| /f:off | Zakáže dokončení názvu souboru a adresáře. |
| /v:on | Povolí opožděné rozšíření proměnných prostředí. |
| /v:off | Zakáže odložené rozšíření proměnných prostředí. |
<string> |
Určuje příkaz, který chcete provést. |
| /? | Zobrazí nápovědu na příkazovém řádku. |
Následující tabulka uvádí platné šestnáctkové číslice, které můžete použít jako hodnoty pro <b> a <f>:
| Value | Color |
|---|---|
| 0 | Black |
| 1 | Blue |
| 2 | Green |
| 3 | Aqua |
| 4 | Red |
| 5 | Purple |
| 6 | Yellow |
| 7 | White |
| 8 | Gray |
| 9 | Light blue |
| a | Light green |
| b | Light aqua |
| c | Light red |
| d | Light purple |
| e | Light yellow |
| f | Bright white |
Remarks
Pokud chcete přesměrovat výstup příkazu na vstup jiného příkazu, použijte operátor pipe (
|). For example:<command1> | <command2>Operátor dvojitého kanálu (
||) slouží ke spuštění dalšího příkazu pouze v případě, že předchozí příkaz selže. V daném scénáři se provede pouze v případě,command2žecommand1selže. For example:<command1> || <command2>Pokud chcete přesměrovat výstup příkazu do souboru, použijte znak závorky
>větší než úhel. For example:<command1> > <file1.txt>Pokud chcete seskupit nebo vnořit více příkazů dohromady, použijte
&. For example:<command1> & <command2>Chcete-li použít více příkazů pro
<string>, oddělte je oddělovačem&&příkazů . For example:<command1> && <command2> && <command3>Note
Pokud použijete
&&, spustí se následující&&příkaz pouze v případě, že předchozí příkaz úspěšně dokončí.Cmdspustí první příkaz a pokračuje k dalšímu pouze v případě, že předchozí příkaz byl úspěšný. Jinak pokud předchozí příkaz selže, následující příkazy se nespustí.Ampersand
&, potrubí|a závorky( )jsou speciální znaky, které musí předcházet řídicí znak^nebo uvozovky, když je předáte jako argumenty.Pokud příkaz úspěšně dokončí operaci, vrátí ukončovací kód nuly (0) nebo žádný ukončovací kód.
Pokud cesta k adresáři, soubory nebo jakékoli informace, které zadáte, obsahují mezery, musíte kolem textu použít dvojité uvozovky (
" "), například"Computer Name". For example:mkdir Test && mkdir "Test 2" && move "Test 2" TestJe nutné použít uvozovky kolem následujících speciálních znaků: & <> [ ] | { } ^ = ; ! ' + , ' ~ [prázdné znaky].
Pokud zadáte
/cnebo/k,cmdprocesy, zbývající část<string>a uvozovky se zachovají pouze v případě, že jsou splněny všechny následující podmínky:- Nepoužíváte ani
/s. - Použijete přesně jednu sadu uvozovek.
- V uvozovkách nepoužívejte žádné speciální znaky, například: & <> ( ) @ ^ |.
- V uvozovkách použijete jeden nebo více prázdných znaků.
- V
<string>uvozovkách je název spustitelného souboru.
Pokud předchozí podmínky nejsou splněny, zpracuje se prozkoumáním prvního znaku, abyste ověřili,
<string>jestli se jedná o levou uvozovku. Pokud je první znak levou uvozovkou, odstraní se spolu s pravou uvozovkou. Zachovají se všechny texty za uvozovkami.- Nepoužíváte ani
Pokud nezadáte
/d,cmdvyhledejte následující podklíče registru:HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun\REG_SZ
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun\REG_EXPAND_SZ
Pokud existuje jeden nebo oba podklíče registru, spustí se před všemi ostatními proměnnými.
Rozšíření příkazů pro určitý proces můžete zakázat pomocí .
/e:offRozšíření pro všechnycmdmožnosti příkazového řádku v relaci počítače nebo uživatele můžete povolit nebo zakázat nastavením následujících hodnot REG_DWORD :HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions\REG_DWORD
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions\REG_DWORD
Nastavte hodnotu REG_DWORD v registru na hodnotu 0x1 (povoleno) nebo 0x0 (zakázáno) pomocí Regedit.exe. Uživatelem zadaná nastavení mají přednost před nastavením počítače a možnosti příkazového řádku mají přednost před nastavením registru.
Caution
Nesprávná úprava registru může vážně poškodit váš systém. Před provedením změn registru byste měli zálohovat všechna hodnotná data v počítači.
Když povolíte rozšíření příkazů, ovlivní to následující příkazy:
assoccall-
chdir(cd) color-
del(erase) endlocalforftypegotoif-
mkdir(md) popdpromptpushdsetsetlocalshift-
start(zahrnuje také změny externích procesů příkazů)
Pokud povolíte opožděné rozšíření proměnné prostředí, můžete použít vykřičník (
!) a nahradit hodnotu proměnné prostředí za běhu.Dokončování názvů souborů a adresářů není ve výchozím nastavení povolené. Můžete povolit nebo zakázat dokončení názvu souboru pro určitý proces
cmdpříkazu pomocí/f:{on | off}příkazu .Dokončování názvů souborů a adresářů můžete povolit nebo zakázat pro všechny procesy
cmdpříkazu v počítači nebo pro relaci přihlášení uživatele nastavením následujících hodnot REG_DWORD :HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar\REG_DWORD
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar\REG_DWORD
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar\REG_DWORD
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar\REG_DWORD
Chcete-li nastavit REG_DWORD hodnotu, spusťte Regedit.exe a použijte hexadecimální hodnotu řídicího znaku pro určitou funkci (například 0x9 je TAB a 0x08 je BACKSPACE). Pro prázdné znaky použijte hodnotu [0x20], protože se nejedná o platný řídicí znak. Uživatelem zadaná nastavení mají přednost před nastavením počítače a možnosti příkazového řádku mají přednost před nastavením registru.
Caution
Nesprávná úprava registru může vážně poškodit váš systém. Před provedením změn registru byste měli zálohovat všechna hodnotná data v počítači.
Pokud povolíte doplňování názvů souborů a adresářů pomocí
/f:onprogramu , použijte pro doplňování názvů adresářů kombinaci kláves CTRL+D a pro doplňování názvů souborů kombinaci kláves CTRL+F . Jediný rozdíl mezi kombinacemi kláves CTRL+D a CTRL+F spočívá v tom, že kombinace kláves CTRL+D odpovídá pouze názvům adresářů a klávesám CTRL+F odpovídá názvům souborů i adresářů. Pokud použijete dokončování názvů souborů a adresářů u předdefinovaných příkazůcdadresáře ,mdnebord, předpokládá se dokončení adresáře.Stisknutím kláves CTRL+D nebo CTRL+F dokončíte název souboru a adresáře. Tyto funkce kombinace kláves připojují zástupný znak, pokud
<string>není k dispozici, sestavte seznam cest, které se shodují, a pak zobrazte první odpovídající cestu. Pokud se žádná z cest neshoduje, funkce dokončení názvu souboru a adresáře se změní a zobrazení se nezmění.- Chcete-li se pohybovat v seznamu odpovídajících cest, opakovaně stiskněte kombinaci kláves CTRL+D nebo CTRL+F .
- Chcete-li se v seznamu pohybovat zpět, stiskněte současně klávesu SHIFT a kombinaci kláves CTRL+D nebo CTRL+F .
- Chcete-li uložený seznam odpovídajících cest zahodit a vygenerovat nový seznam, upravte
<string>jej a stiskněte kombinaci kláves CTRL+D nebo CTRL+F. - Pokud přepnete mezi klávesami CTRL+D a CTRL+F, uložený seznam odpovídajících cest se zahodí a vygeneruje se nový seznam.
Dokončování názvů souborů a adresářů správně zpracovává názvy souborů, které obsahují prázdné znaky nebo speciální znaky, pokud umístíte uvozovky kolem odpovídající cesty.
Pokud dokončování názvů souborů a adresářů zpracováváte zevnitř
<string>v místě,<string>kde bylo dokončení zpracováno, bude jakákoli část cesty vpravo od kurzoru zahozena.
Použití proměnných prostředí
Prostředí příkazového cmd prostředí je definováno proměnnými, které určují chování příkazového prostředí a operačního systému. Chování prostředí příkazového prostředí nebo celého prostředí operačního systému můžete definovat pomocí dvou typů proměnných prostředí, systému a místního prostředí. Proměnné systémového prostředí definují chování globálního prostředí operačního systému. Místní proměnné prostředí definují chování prostředí aktuální instance cmd.
Systémové proměnné můžou měnit jenom uživatelé s oprávněními správce. Tyto proměnné se nejčastěji používají v přihlašovacích skriptech. Místní proměnné prostředí jsou k dispozici pouze v případě, že je uživatel, pro kterého byly vytvořeny, přihlášen k počítači. Lokální proměnné nastavené v podregistru HKEY_CURRENT_USER jsou platné pouze pro aktuálního uživatele, ale definují chování globálního prostředí operačního systému.
Následující seznam popisuje různé typy proměnných v sestupném pořadí priority:
- Integrované systémové proměnné.
- Systémové proměnné nalezené v podregistru HKEY_LOCAL_MACHINE .
- Místní proměnné nalezené v podregistru HKEY_CURRENT_USER .
- Všechny proměnné prostředí a cesty nastavené v souboru Autoexec.bat.
- Všechny proměnné prostředí a cesty nastavené v přihlašovacím skriptu (pokud jsou k dispozici).
- Proměnné používané interaktivně ve skriptu nebo dávkovém souboru
V příkazovém prostředí každá instance cmd dědí prostředí své nadřazené aplikace. Proto můžete změnit proměnné v novém cmd prostředí, aniž by to mělo vliv na prostředí nadřazené aplikace.
Proměnné prostředí ve vašem prostředí můžete zobrazit spuštěním jednoho z následujících příkazů:
set
Get-ChildItem Env:
Nastavení proměnných prostředí
Pokud chcete zobrazit proměnnou, zadejte:
set <VariableName>
Pokud chcete přidat proměnnou, zadejte:
set <VariableName>=<value>
Pokud chcete odstranit proměnnou, zadejte:
set <VariableName>=
Většinu znaků můžete použít jako hodnoty proměnných, včetně prázdných znaků. Pokud používáte speciální znaky <, >, |, &, nebo ^, musíte před ně vložit řídicí znak ^nebo dvojité uvozovky. Pokud použijete dvojité uvozovky, budou zahrnuté jako součást hodnoty, protože vše, co následuje za znaménkem rovná se, se použije jako hodnota. Zvažte následující příklady:
Pokud chcete vytvořit hodnotu New&Nameproměnné, zadejte:
set <VariableName>=New^&Name
Pokud chcete vytvořit hodnotu "New&Name"proměnné, zadejte:
set <VariableName>="New&Name"
Pokud zadáte set <VariableName>=New&Name (bez karat ^ nebo dvojitých uvozovek) na příkazovém řádku, může se zobrazit následující chybová zpráva:
"'Name' is not recognized as an internal or external command, operable program or batch file."
U názvů proměnných se nerozlišuje malá a velká písmena. Zobrazí ale proměnnou přesně tak, set jak jste ji zadali. V názvech proměnných můžete kombinovat velká a malá písmena, aby byl váš kód čitelnější, například UserName.
Note
- Maximální velikost proměnné prostředí je 8 192 bajtů.
- Maximální celková velikost všech proměnných prostředí, včetně názvů, hodnot a znaménka rovná se, je pro proces 65 536 znaků.
Nahrazení hodnot proměnných prostředí
Pokud chcete nahradit hodnoty proměnných v příkazovém řádku nebo skriptech, uzavřete název proměnné do znaků procenta (%VariableName%). To umožňuje cmd odkazovat na hodnotu proměnné místo toho, aby se s ní zacházeli jako s textem literálu. Při spuštění cmd skriptu nahradí instance proměnné její hodnotou. Například použití %USERNAME% ve skriptu automaticky nahradí skutečné uživatelské jméno. Nahrazení proměnných není rekurzivní; cmd kontroluje proměnné pouze jednou.