GT vysvetľuje: Rozdiel medzi príkazovým riadkom a Powershell
Rôzne / / November 29, 2021
Operačný systém Windows sa dodáva s niekoľkými aplikáciami a nástrojmi, ktoré používateľom pomáhajú vykonávať rôzne úlohy. Spolu s aplikáciami sú nástroje ako Príkazový riadok (CMD) a PowerShell, ktoré sa často používajú na odstraňovanie chýb, spúšťanie dávkových príkazov a údržbu systému. Aký je však rozdiel medzi príkazovým riadkom a PowerShell?
Na prvý pohľad môžete použiť oba nástroje a na oboch je možné spustiť veľa príkazov. Ale medzi týmito dvoma sú jemné rozdiely. Zjednodušene povedané, PowerShell je starším bratom CMD a dá sa použiť na spustenie väčšiny príkazov CMD a potom aj niektorých ďalších.
Poďme začať.
1. Čo je príkazový riadok (CMD)
Windows 95 a 98 prišli s Command.com, ktorý bol známy aj ako MS-DOS. Používatelia mohli interagovať s OS priamo pomocou textových príkazov. Microsoft potom vydal CMD (príkazový riadok) so systémom Windows NT, ktorý bol lepší ako predchádzajúce iterácie.
CMD sa väčšinou používa na vykonávanie dávkových príkazov, interakciu so súborovým systémom (DIR príkazy) a dokonca odstraňovať chyby súvisiace so systémom, ktoré sa inak ťažko riešia.
2. Čo je PowerShell
PowerShell bol prvýkrát vydaný v roku 2006 pre Windows XP SP2. Vylepšený PowerShell 2.0 so systémom Windows 7 priniesol ešte viac funkcií a bol spätne kompatibilný s mnohými príkazmi CMD. Windows 10 ho má ako predvolený nástroj príkazového riadka. Dôvodom, prečo sa PowerShell rozbehol, bola jeho schopnosť pracovať s programovacím jazykom C#, ktorý sa tiež integruje s .NET Framework.
To umožnilo používateľom písať vlastné skripty, ktoré možno použiť na vykonanie série príkazov na diaľku. Môžete ho tiež použiť na automatizáciu určitých administratívnych úloh, čo poskytuje väčšiu flexibilitu ako skromný CMD. Je to skriptovacie prostredie, ktoré funguje ako viac než len shell. Okrem toho má modré pozadie namiesto čiernej z nejakého dôvodu.
3. Rozdiel medzi CMD a PowerShell
CMD väčšinou používajú správcovia systému na spracovanie dávkových súborov, odstraňovanie niektorých bežných chýb a opravu poškodených systémových súborov.
PowerShell posúva veci na ďalšiu úroveň tým, že umožňuje správcom ovládať celú sieť a všetky systémy v tejto sieti. Na rozdiel od CMD, ktoré dokáže interpretovať a vykonávať iba dávkové príkazy, PowerShell dokáže interpretovať a spúšťať aj dávkové a PowerShell príkazy. Čo je to?
Tu prichádzajú „cmdlets“. Ide o skupinu príkazov, ktoré môžu používatelia vykonávať jediným príkazom. Táto skupina príkazov sa nazýva skripty. V CMD musíte pred zadaním ďalšieho počkať, kým sa úplne nevykoná predchádzajúci príkaz. PowerShell šetrí čas a umožňuje automatizáciu pomocou skriptov týmto spôsobom.
Zatiaľ čo CMD dokáže pracovať len s textom, PowerShell vytrhol z príkazových riadkov Linuxu a dokáže pracovať aj s potrubím. Rúry umožňujú jednej cmdlet zdieľať aj zložité údaje (výstup) s inou cmdlet (vstup). To umožňuje správcom manipulovať a prenášať údaje medzi rôznymi programami a dokonca aj počítačmi v sieti spustením cmdletov v definovanom poradí.
Nerobte chybu, hoci PowerShell je výkonný, nikde nie je taký výkonný ako niektoré nástroje príkazového riadka, ktoré sú podporované v distribúciách s príchuťou Linuxu.
4. Kedy použiť
CMD sa široko používa na navigáciu v štruktúre systémových súborov a priečinkov, správu a interakciu s nimi, úpravu vlastností a riešenie chýb systému Windows. V GT často žiadame našich čitateľov, aby spúšťali príkazy ako SFC (Kontrola systémových súborov) a DISM (Servis a správa obrazu nasadenia), aby skontrolovali integritu systémových súborov a opravili ich.
Správcovia systému uprednostňujú PowerShell na správu údajov, najmä cez sieť počítačov. Okrem toho, keďže v PowerShell spúšťate takmer všetky príkazy CMD, poskytuje to výhodu nad príkazovým riadkom. Môžete tiež spúšťať rutiny cmdlet, čo sú sady príkazov (skriptov) na vykonávanie administratívnych funkcií.
Schopnosť klepnúť na úložisko kódu .NET Framework otvára používateľom PowerShellu viac možností. Môžete získať informácie o spustených procesoch (cmdlet get-process), sieťovú komunikáciu, vykonávať administratívne úlohy súvisiace s databázami a dokonca aj kryptografické algoritmy. Vhodnejšie pre programátorov a administrátorov.
Potom prichádza podmienená logika, kde môžete naplánovať vykonanie úloh napríklad na základe výskytu udalosti. Ďalšie príklady podmienenej logiky zahŕňajú parametre ako if, else, for, when a switch. Jednoduchým príkladom môže byť cmdlet, ktorý zatvorí všetky aplikácie na pozadí, ak RAM je plná alebo porušuje určitú úroveň z hľadiska používania. Pekné, čo?
Aj keď ide o jednoduché príklady, správcovia siete používajú PowerShell na mnohé zložité úlohy. Neviete, ako vytvoriť svoj prvý cmdlet? Nebojte sa, pretože PowerShell sa teší veľkej komunite nadšencov, ktorí zdieľali svoje cmdlety, ktoré môžete použiť.
Power Move
Microsoft TechNet má skvelú zbierku sprievodcov, príkladov a odkazov na úložiská kódu (ako GitHub). Skvelé miesto na začatie vašej cesty. Nedávno nová Aplikácia Windows Terminal pre Windows 10 bol vydaný, čo zmiatlo mnohých používateľov. Microsoft však má dal jasne najavo že CMD je tu zostaň. To dáva veľký zmysel vidieť, koľko používateľov stále používa CMD ako svoj predvolený nástroj príkazového riadka.
Ďalej: Hľadáte nejaké tipy a triky CMD? Kliknutím na odkaz nižšie nájdete upravený zoznam 11 skvelých príkazov CMD.