CMD vs BAT
CMD og BAT er filer som brukes til å automatisere bestemte oppgaver som er repeterende og brukes ofte av brukeren. Å lage en CMD- eller BAT-fil er akkurat som å bruke et enkelt programmeringsspråk med fordelene ved muligheten til å bruke kommandolinjebeskrivelser og å utføre andre programmer med eller uten parametere. CMD- og BAT-filer er svært lik hverandre med svært små forskjeller. BAT er en veldig gammel filtype som har eksistert siden adventen av DOS. Det ble overført av Microsoft da det utviklet Windows vekk fra DOS. CMD-filtypen ble utviklet av Microsoft for å brukes til implementering av Windows NT-kommandobeskrivelser, men brukes også av nyere versjoner av Windows som er basert på Windows NT.
BAT ble opprettet for å samhandle med COMMAND.COM, kommandotolkeren til DOS. Microsoft vedtok de fleste DOS-kommandoene i sin nye tolk, kalt CMD. EXE. CMD ble opprettet for å grensesnitt med CMD.EXE og det bryter kompatibiliteten med COMMAND.COM. En annen viktig forskjell er hvordan de håndterer feilveiledningsvariabelen. Når du bruker BAT, endres denne variabelen bare når en faktisk feil oppstår, og ingen endring i tilstand oppstår når hver kommando kjøres vellykket. Dette er ikke sant for CMD da feilfeilvariabelen fortsatt vil endre tilstand selv om det ikke oppstår feil. Programmører bør ta dette i betraktning når du oppretter utførlige skript, da det kan føre til litt forvirring.
Bortsett fra de mindre forskjellene, er CMD og BAT identiske med hverandre. De fleste brukere som lager enkle skript for å fjerne eller overføre filer rundt, bør ikke oppleve noe problem. For brukere av nyere versjoner av Windows, er BAT og CMD ganske mye utskiftbare som CMD.EXE ville tolke og utføre kommandoene i begge filene. Selv om de fleste brukere er klar over dette, brukte mange av de eldre som hadde sjanse til å jobbe med DOS og batchfiler fortsatt BAT-utvidelsen. rett og slett ut av vane og kjennskap.
Sammendrag:
1. BAT-utvidelsen brukes av DOS og Windows mens CMD-utvidelsen er for Windows NT Command Scripts
2. BAT-utvidelsen kan tolkes av COMMAND.COM og CMD.EXE mens CMD-utvidelsen bare kan tolkes av CMD.EXE
3. Feilsøkingen endrer alltid tilstanden i CMD, men bare på feil i BAT