cmd.exe - cmd.exe

Kommandoprompt (cmd.exe)
Kommandopromptikon (Windows) .png
Kommandoprompt på Windows 10 RTM.png
Kommandoprompt i Windows 10
Andre navn Windows Command Processor
Utvikler (er) Microsoft , IBM , ReactOS bidragsytere
Første utgivelse Desember 1987 ; 33 år siden ( 1987-12 )
Operativsystem
Plattform IA-32 , x86-64 , ARM (og historisk sett DEC Alpha , MIPS , PowerPC og Itanium )
Forgjenger COMMAND.COM
Type Kommandolinjetolk

cmd.exe er standard kommandolinjetolker for operativsystemene OS/2 , eComStation , ArcaOS , Microsoft Windows ( Windows NT-familien og Windows CE-familien ) og ReactOS . Navnet refererer til det kjørbare filnavnet. Det blir også ofte referert til som cmd eller kommandoprompt , med henvisning til standardvinduetittel på Windows. Implementeringene er forskjellige på de forskjellige systemene, men oppførselen og det grunnleggende settet med kommandoer er generelt konsistent. cmd.exe er motstykket til COMMAND.COM i DOS- og Windows 9x- systemer, og analogt med Unix-skallene som brukes på Unix-lignende systemer. Den første versjonen av cmd.exe for Windows NT ble utviklet av Therese Stowell. Windows CE 2.11 var den første innebygde Windows -versjonen som støttet en konsoll og en Windows CE -versjon av cmd.exe . På Windows CE .NET 4.2 , Windows CE 5.0 og Windows Embedded CE 6.0 blir det også referert til som Command Processor Shell . ReactOS -implementeringen av cmd.exe er avledet fra FreeCOM, FreeDOS -kommandolinjetolk.

Operasjon

cmd.exe samhandler med brukeren via et kommandolinjegrensesnitt . På Windows er dette grensesnittet implementert gjennom Win32 -konsollen . cmd.exe kan dra nytte av funksjoner som er tilgjengelige for native -programmer på sin egen plattform. For eksempel på OS/2 og Windows kan den bruke ekte rør i kommandorørledninger, slik at begge sider av rørledningen kan kjøres samtidig. Som et resultat er det mulig å omdirigere standard feilstrøm . ( COMMAND.COM bruker midlertidige filer og kjører de to sidene i serie, den ene etter den andre.)

Flere kommandoer kan behandles på en enkelt kommandolinje ved hjelp av kommandoseparatoren && .

Når du bruker denne separatoren i Windows cmd.exe , må hver kommando fullføres vellykket for at følgende kommandoer skal kunne utføres. For eksempel:

C:\>CommandA && CommandB && CommandC

I eksemplet ovenfor vil CommandB bare utføres hvis CommandA fullføres vellykket, og utførelsen av CommandC avhenger av at CommandB er vellykket . For å behandle påfølgende kommandoer, selv om den forrige kommandoen gir en feil, bør kommandoseparatoren & brukes. For eksempel:

C:\>CommandA & CommandB & CommandC

Windows XP eller nyere er maksimal lengde på strengen som kan brukes ved ledeteksten 8191 tegn. På tidligere versjoner, for eksempel Windows 2000 eller Windows NT 4.0 , er maksimal lengde på strengen 2047 tegn. Denne grensen inkluderer kommandolinjen, individuelle miljøvariabler som arves av andre prosesser og alle miljøvariabelutvidelser.

Anførselstegn kreves for følgende spesialtegn :

& < > [ ] { } ^ = ; ! ' + , ` ~ [white space]

Interne kommandoer

OS/2

Image
OS/2 -vindu (cmd.exe) på Microsoft OS/2 versjon 1.3

Følgende er en liste over Microsoft OS/2 interne cmd.exe -kommandoer :

Windows NT -familie

Image
cmd.exe på Windows 7

Følgende liste over interne kommandoer støttes av cmd.exeWindows NT og senere:

Windows CE

Image
Pocket CMD v 3.0 (cmd.exe) på Windows CE 3.0

Følgende kommandoliste støttes av cmd.exe på Windows CE .NET 4.2, Windows CE 5.0 og Windows Embedded CE 6.0:

  • attrib
  • anrop
  • cd
  • chdir
  • cls
  • kopiere
  • Dato
  • del
  • dir
  • ekko
  • viske ut
  • exit
  • gå til
  • hjelp
  • hvis
  • md
  • mkdir
  • bevege seg
  • sti
  • pause
  • spør
  • pwd
  • rd
  • rem
  • ren
  • gi nytt navn
  • rmdir
  • sett
  • skifte
  • start
  • tid
  • tittel
  • type

I tillegg er net -kommandoen tilgjengelig som en ekstern kommando som er lagret i \ Windows \ net.exe .

ReactOS

Image
Kommandoprompt (cmd.exe) på ReactOS

ReactOS -implementeringen inkluderer følgende interne kommandoer:

  • ?
  • alias
  • assoc
  • pip
  • anrop
  • cd
  • chdir
  • valg
  • cls
  • farge
  • kopiere
  • ctty
  • Dato
  • del
  • slette
  • forsinkelse
  • dir
  • dirs
  • ekko
  • ekko
  • echoerr
  • echoserr
  • endlokal
  • viske ut
  • exit
  • til
  • gratis
  • gå til
  • historie
  • hvis
  • hukommelse
  • md
  • mkdir
  • mklink
  • bevege seg
  • sti
  • pause
  • popd
  • spør
  • pushd
  • rd
  • rmdir
  • rem
  • ren
  • gi nytt navn
  • erstatte
  • skjerm
  • sett
  • setlocal
  • skifte
  • start
  • tid
  • timer
  • tittel
  • type
  • ver
  • bekrefte
  • vol

Sammenligning med COMMAND.COM

På Windows er cmd.exe stort sett kompatibel med COMMAND.COM, men har følgende utvidelser over den:

  • Mer detaljerte feilmeldinger enn teppet " Dårlig kommando eller filnavn " (i tilfelle feilformede kommandoer) til COMMAND.COM . I OS/2 rapporteres det feil på det valgte språket i systemet, og teksten blir hentet fra systemmeldingsfilene. Den HJELP kommandoen kan da være utstedt med feilmeldingen antall for å skaffe ytterligere informasjon.
  • Støtter bruk av piltastene for å bla gjennom kommandohistorikk. (Under DOS var denne funksjonen bare tilgjengelig under DR DOS (gjennom HISTORY ) og senere via en ekstern komponent kalt DOSKEY .)
  • Legger til fullføring av kommandolinje for fil- og mappebaner.
  • Behandler hovedtegnet ( ^ ) som fluktkarakteren ; karakteren som følger den, skal tas bokstavelig. Det er spesialtegn i cmd.exe og COMMAND.COM (f.eks. " < ", " > " Og "|") som er ment å endre oppførselen til kommandolinjeprosessoren. Caret -karakteren tvinger kommandolinjeprosessoren til å tolke dem bokstavelig.
  • Støtter forsinket variabelutvidelse med SETLOCAL EnableDelayedExpansion, slik at verdier av variabler kan beregnes ved kjøretid i stedet for under analyse av script før kjøring (Windows 2000 og senere), fikse DOS -idiomer som gjorde bruk av kontrollstrukturer vanskelig og kompleks. Utvidelsene kan deaktiveres, noe som gir en strengere kompatibilitetsmodus.

Interne kommandoer er også forbedret:

  • Den deltree kommandoen ble fusjonert inn i RD -kommandoen, som en del av sin / S bryter .
  • SetLocal og EndLocal kommandoer begrenser omfanget av endringer i miljøet. Endringer i kommandolinjemiljøet etter at SetLocal -kommandoer er lokale for batchfilen . EndLocal -kommandoen gjenoppretter de forrige innstillingene.
  • The Call kommandoen tillater subrutiner i batch-fil. The Call kommandoen i COMMAND.COM støtter bare kaller eksterne batch-filer.
  • Filnavn -parserutvidelser til kommandoen Set er sammenlignbare med C -shell .
  • The Set -kommandoen kan utføre uttrykk evaluering .
  • En utvidelse av For -kommandoen støtter parsing av filer og vilkårlige sett i tillegg til filnavn.
  • De nye PushD- og PopD -kommandoene gir tilgang til tidligere navigerte baner som ligner "fremover" og "tilbake" -knappene i en nettleser eller Filutforsker .
  • Den betingede IF- kommandoen kan utføre store og små bokstaver som er ufølsomme og numeriske likestillinger og ulikheter i tillegg til store og små bokstaver. (Dette var tilgjengelig i DR-DOS, men ikke i PC DOS eller MS-DOS .)

Se også

Referanser

Videre lesning

Eksterne linker