CMD vs BAT
CMD e BAT sono i file utilizzati per automatizzare determinate attività ripetitive e utilizzate frequentemente dall'utente. Creare un file CMD o BAT è come utilizzare un semplice linguaggio di programmazione con i vantaggi della possibilità di utilizzare le istruzioni della riga di comando e di eseguire altre applicazioni con o senza parametri. I file CMD e BAT sono molto simili tra loro con differenze molto minori. BAT è un tipo di file molto vecchio che è stato usato sin dall'avvento di DOS. È stato trasferito da Microsoft quando ha sviluppato Windows lontano dal DOS. Il tipo di file CMD è stato sviluppato da Microsoft per l'implementazione degli script di comando di Windows NT ma è anche utilizzato dalle versioni più recenti di Windows basate su Windows NT.
BAT è stato creato per interagire con COMMAND.COM, l'interprete dei comandi di DOS. Microsoft ha adottato la maggior parte dei comandi DOS nel nuovo interprete denominato CMD. EXE. CMD è stato creato per interfacciarsi con CMD.EXE e interrompe la compatibilità con COMMAND.COM. Un'altra differenza fondamentale riguarda il modo in cui gestiscono la variabile errorlevel. Quando si utilizza BAT, questa variabile viene modificata solo quando si verifica un errore effettivo e non si verifica alcun cambiamento di stato quando ciascun comando viene eseguito correttamente. Questo non è vero per CMD poiché la variabile errorlevel cambierebbe ancora stato anche se non si verificano errori. I programmatori dovrebbero prendere nota di ciò quando creano script elaborati in quanto potrebbero causare un po 'di confusione.
A parte quelle piccole differenze, CMD e BAT sono identici tra loro. La maggior parte degli utenti che creano semplici script per cancellare o trasferire file in giro non dovrebbero incontrare alcun problema. Per gli utenti delle versioni più recenti di Windows, BAT e CMD sono praticamente intercambiabili poiché CMD.EXE interpreta ed esegue i comandi in entrambi i file. Sebbene molti utenti siano consapevoli di questo fatto, molte delle persone anziane che hanno avuto la possibilità di lavorare con DOS e i suoi file batch usano ancora l'estensione BAT; semplicemente per abitudine e familiarità.
Sommario:
1. L'estensione BAT è utilizzata da DOS e Windows mentre l'estensione CMD è per gli script di comando di Windows NT
2. L'estensione BAT può essere interpretata da COMMAND.COM e CMD.EXE mentre l'estensione CMD può essere interpretata solo da CMD.EXE
3. Il errorlevel cambia sempre stato in CMD ma solo in errori in BAT