Fișierul de scripturi în serie merge tot drumul până în momentul în care MS-DOS a fost lansat în 1981 ca un sistem de operare pentru calculatoarele personale IBM. Acesta a fost în esență o clonă a Digital Research's CP / M, unul dintre primele sisteme de operare pentru microcomputer. Microsoft a reușit să ruleze pe PC-uri IBM care acționează atât ca nucleu, cât și ca shell, împreună cu câteva caracteristici suplimentare ale altor shell-uri. Microsoft a lansat mai multe versiuni de DOS în timp, extinzând ulterior fișierele lot în mai multe moduri. Apoi vine Windows care a evoluat rapid dintr-o aplicație într-un sistem de operare complet fled. Microsoft a inclus un interpret al liniei de comandă numit "Command Prompt" (sau "cmd") în linia de sisteme de operare Windows NT care utilizează în esență aceleași comenzi ale Command.com, dar cu caracteristici suplimentare.
În contrast cu versiunile anterioare, care ar permite doar executarea unui fișier .BAT în promptul MS-DOS, acest interpret de linie de comandă de 32 de biți îmbunătățit a făcut ca limba lotului să fie mai utilă datorită numeroaselor îmbunătățiri și funcții suplimentare. Cu toate acestea, interpretul liniei de comandă nu a putut oferi consistență deoarece nu a putut fi utilizat pentru a automatiza funcționalitățile multiple ale interfeței grafice a utilizatorului. Nu era suficient de puternic pentru a satisface utilizatorii puterii. Astfel, Microsoft a început să lucreze la o nouă abordare a managementului liniei de comandă și, în final, a lansat un nou CLI îmbunătățit numit "Monad" în 2002. A reușit să depășească neajunsurile predecesorului său. Până în 2005, Microsoft a lansat deja trei versiuni ale lui Monad. În 2006, numele a fost schimbat oficial în "Windows PowerShell", care se lasă rămas bun de la scripturile din fișierele de vârstă școlară.
Command Prompt sau cmd este interpretorul de linie de comandă pentru sistemele de operare Microsoft Windows utilizate pentru automatizarea diferitelor sarcini legate de sistem folosind scripturi și fișiere batch. Deseori numit cmd.exe, este un program de Windows care emite comenzi la sistem cum ar fi comenzile de gestionare a fișierelor, cum ar fi copierea, lipirea și ștergerea. El emula majoritatea abilităților de linie de comandă disponibile în MS-DOS printr-o interfață de linie de comandă. Acesta a fost inițial lansat ca interpretor de linie de comandă (CLI) pentru familia Windows NT de sisteme de operare și a fost dezvoltat de Therese Stowell. CMD au comenzi încorporate pentru a executa diferite sarcini, dintre care majoritatea pot fi executate ca administrator. Command Prompt poate fi accesat prin comanda rapidă din meniul Start sau prin comanda Run cmd. Este disponibil în aproape toate versiunile de ferestre.
PowerShell este o versiune mai avansată a programului cmd folosit pentru a rula programe externe, cum ar fi pingul sau copierea și automatizarea multor sarcini de administrare a diferitelor sisteme care nu sunt accesibile din cmd.exe. Este destul de similar cu cmd, cu excepția faptului că este mai puternic și utilizează comenzi diferite altfel. Este mai mult decât o coajă; este un mediu de scripting conceput special pentru administratorii de sistem pentru a efectua sarcini administrative pe mai multe sisteme de operare. Este un instrument de linie de comandă bazat pe sarcini și un limbaj de scripting construit pe cadrul .Net. Se invocă un set foarte bogat de comenzi în contextul scripturilor de automatizare numite "cmdlets", care permit administrarea în sistemele Windows. Ele sunt, de asemenea, ușor de utilizat cu o sintaxă standardizată, care le face ușor să creeze scripturi puternice. Este un interpret de linie de comandă mult mai puternic decât Promptul de comandă care poate interpreta comenzile Batch și comenzile PowerShell.
Atât cmd cât și PowerShell sunt instrumente puternice de linie de comandă utilizate pentru automatizarea sarcinilor de administrare a sistemului prin scrierea unui fișier script / lot. Cu toate acestea, cmd are capacități de administrare reduse în comparație cu PowerShell, care, pe de altă parte, este o implementare a shell-ului mai avansată și mai modernă, cu caracteristici suplimentare și îmbunătățiri. PowerShell este special conceput pentru administratorii de sistem pentru a controla și automatiza administrarea sistemelor de ferestre.
PowerShell este folosit în cea mai mare parte de administratorii de sistem pentru a gestiona rețeaua, precum și de sistemele și aplicațiile care fac parte din acea rețea. Acesta poate interpreta în mod eficient comenzile Batch și comenzile PowerShell, în timp ce cmd poate interpreta numai comenzile Batch. Command Prompt oferă un mijloc de a interacționa cu programul computerului cu ajutorul comenzilor emise de utilizatori.
Spre deosebire de Command Prompt, care poate conduce doar fluxuri de text, iesirea generata dintr-un cmdlet este mai mult decat un flux de text; ei pipe obiecte între cmdlets care le permite să împărtășească mai multe date complexe între cmdlets.
PowerShell utilizează funcții mult mai puternice numite "cmdlets" care constituie un set bogat de comenzi pentru a executa interogări mai puternice, cu o ieșire mai bună decât cea găsită în linia de comandă Windows. Funcțiile PowerShell sunt mult mai complicate, dar mai puternice decât cele din Command Prompt și pot fi utilizate cu sintaxa standard.
PowerShell este mai mult decât o coajă; este un mediu puternic de scripting bazat pe framework-ul .Net care poate fi folosit pentru a rula script-uri complexe pentru administrarea sistemului Windows mai ușor și mai eficient decât ar fi cu Command Prompt. În plus, PowerShell include mai multe îmbunătățiri și caracteristici suplimentare care extind utilizarea acestuia care, în cele din urmă, îmbunătățesc utilitatea acestuia.
Atât PowerShell cât și Command Prompt sunt instrumente de linie de comandă bazate pe sarcini utilizate pentru a automatiza rapid sarcinile de administrare a sistemului, dar există diferențe semnificative între cele două în ceea ce privește funcționalitatea și utilitatea. CMD este o cochilie de linie de comandă de bază care introduce împreună cu familia Windows NT a sistemelor de operare cu aceeași sintaxă și funcționalitate standardizate ca DOS. PowerShell, pe de altă parte, este un shell de linie de comandă bazat pe sarcini și un limbaj de scripting bazat pe cadrul .Net folosit pentru a automatiza procesarea în loturi și pentru a crea instrumente de gestionare a sistemului. Spre deosebire de cmd, acesta folosește un set bogat de comenzi numite cmdlets pentru a efectua sarcini de administrare a sistemului.