CMD vs BAT
CMD och BAT är filer som används för att automatisera vissa uppgifter som är repetitiva och används ofta av användaren. Att skapa en CMD- eller BAT-fil är precis som att använda ett enkelt programmeringsspråk med fördelarna med förmågan att använda kommandoradsinstruktioner och att utföra andra program med eller utan parametrar. CMD- och BAT-filer är mycket lika varandra med mycket små skillnader. BAT är en mycket gammal filtyp som har funnits sedan adventen av DOS. Det överfördes av Microsoft när det utvecklade Windows bort från DOS. CMD-filtypen har utvecklats av Microsoft för att användas för implementering av Windows NT-kommandoskript, men används också av de nyare versioner av Windows som är baserade på Windows NT.
BAT skapades för att interagera med COMMAND.COM, kommandotolken för DOS. Microsoft antog de flesta DOS-kommandona till sin nya tolk som heter CMD. EXE. CMD skapades för att gränssnittet med CMD.EXE och det bryter kompatibiliteten med COMMAND.COM. En annan viktig skillnad är hur de hanterar errorlevel-variabeln. När du använder BAT ändras endast denna variabel när ett verkligt fel inträffar och ingen förändring av tillstånd uppstår när varje kommando körs framgångsrikt. Detta gäller inte för CMD eftersom errorlevel-variabeln fortfarande skulle ändra tillstånd även om inga fel uppstår. Programmerare bör notera detta när man skapar utarbetade skript eftersom det kan orsaka lite förvirring.
Bortsett från de mindre skillnaderna är CMD och BAT identiska med varandra. De flesta användare som skapar enkla skript för att rensa eller överföra filer runt bör inte stöta på några problem. För användare av de senaste versionerna av Windows är BAT och CMD ganska utbytbara eftersom CMD.EXE skulle tolka och utföra kommandon i båda filerna. Även om de flesta användare är medvetna om detta, använder många av de äldre som hade chans att arbeta med DOS och dess batchfiler fortfarande BAT-tillägget. helt enkelt ur vana och förtrogenhet.
Sammanfattning:
1. BAT-förlängningen används av DOS och Windows medan CMD-tillägget är för Windows NT Command Scripts
2. BAT-förlängningen kan tolkas av COMMAND.COM och CMD.EXE medan CMD-förlängningen endast kan tolkas av CMD.EXE
3. Felläget ändrar alltid tillståndet i CMD men endast på fel i BAT