Windows PowerShell je neoddeliteľnou súčasťou operačného systému Windows. Je to shell príkazového riadka a skriptovací jazyk používaný na automatizáciu časovo náročných opakujúcich sa úloh, vytváranie vlastných nástrojov na správu a vytváranie, testovanie a nasadzovanie riešení pre rôzne iné problémy.

Predvolená verzia PowerShell, ktorá sa dodáva predbalená v operačnom systéme Windows, je PowerShell 5.1 alebo jednoducho Windows PowerShell. Ale vzhľadom na to, že PowerShell 7 je už vydaný a stabilný, nemá pre OS Windows väčší zmysel používať najnovšiu verziu PowerShell? Aké výhody však PowerShell 7 poskytuje? A oplatí sa upgrade? Poďme sa o tom porozprávať!

Čo je PowerShell 7?

PowerShell 7 je najnovšia verzia prostredia PowerShell LTS. Táto verzia prostredia PowerShell je vyvinutá prostredníctvom novšieho rámca .NET Core, ktorý umožňuje niekoľko veľkých aktualizácií, ktoré budú užitoční používatelia systému Windows.

PowerShell 7 je registrovaný a licencovaný pod licenciou MIT. Je teraz open-source softvér

instagram viewer
, kde si ľudia môžu voľne prezerať, upravovať a distribuovať svoju vlastnú kópiu zdrojového kódu softvéru. Vývojári môžu tiež prispieť k oficiálnym vydaniam PowerShell tým, že sa pridajú Oficiálna stránka GitHub PowerShell.

Vďaka podpore komunity je táto verzia PowerShell teraz multiplatformová! To znamená, že ho teraz možno nainštalovať a používať v systémoch Windows, MacOS a Linux. Tu je zoznam podporovaných operačných systémov x64:

  • Windows 8.1, 10, 11
  • Windows Server 2012, 2012 R2, 2016 a 2019
  • macOS 10.13+
  • Red Hat Enterprise Linux (RHEL) / CentOS 7
  • Fedora 30+
  • Debian 9
  • Ubuntu LTS 16.04+

Alpine Linux 3.8+ PowerShell 7 je podporovaný aj na rôznych ARM32 a ARM64 distribúciách Debian, Ubuntu a ARM64 Alpine Linux. Pre záujemcov sú tu aj nepodporované balíčky pre Arch a Kali Linux.

Aké sú nové funkcie zahrnuté v PowerShell 7?

Obrazový kredit: Windows/Unsplash

Okrem toho, že PowerShell 7 je multiplatformový a otvorený, má mnoho ďalších nových funkcií, ktoré ešte viac zlepšujú produktivitu. Tu je niekoľko z tých pozoruhodnejších:

1. Vylepšená spätná kompatibilita

S rozdielom v rámci budú mať verzie Windows PowerShell a PowerShell používajúce rámec .NET Core nekompatibilitu. Aby sa ľuďom prechod uľahčil, PowerShell 7 teraz integruje modul WindowsCompatibility. Tento modul je navrhnutý tak, aby umožňoval moduly Windows PowerShell a mnohé ďalšie populárne príkazy CMD pracovať v PowerShell 7.

2. Paralelizácia potrubia s pre každý objekt

PowerShell 7 má teraz parameter Parallel. V prostredí Windows PowerShell sa každý prepojený objekt pomocou cmdlet ForEach-Object spustí jeden po druhom. Ale s novým parametrom Parallel sú teraz všetky prepojené objekty vykonávané súčasne. To výrazne zvyšuje výkon, čo vám môže ušetriť čas.

3. Ternárni operátori

Podmienky prostredia Windows PowerShell sa vykonávajú prostredníctvom príkazov if-else. PowerShell 7 to ešte zjednodušuje zavedením ternárnych operátorov, čo sú v podstate zjednodušené verzie príkazov if-else pomocou „?“ a „:“ v syntaxi. Táto funkcia umožňuje rýchlejšie a čistejšie skriptovanie.

4. Operátori potrubných reťazcov

Operátori kanálov sú dôležitou funkciou prostredia Windows PowerShell. Umožňuje vám vytvárať zložité výrazy tým, že vezmete výstup z cmdlet a použijete ho v inom cmdlet. Toto je však obmedzené, pretože prostredie Windows PowerShell nedokáže spracovať podmienené výrazy pomocou bežných operátorov potrubia.

PowerShell 7 rieši tento problém zavedením operátorov potrubných reťazcov, ktorými sú „&&“ a „||“. Tento nový operátor potrubia umožňuje PowerShellu vykonávať príkazy s podmienenými výrazmi.

Operátor && sa používa na vykonanie príkazu na pravej strane potrubia iba vtedy, ak je príkaz pred operátorom úspešný. Zatiaľ čo operátor || vykoná príkaz pravého potrubia iba vtedy, ak príkaz pred operátorom zlyhá.

Prečo nie je PowerShell 7 predvolený v systéme Windows?

Obrazový kredit: Mike Schinkel/Flickr

PowerShell 7 je open-source multiplatformový softvér, ktorý poskytuje funkcie, ktoré môžu výrazne zlepšiť výkon a rýchlosť skriptovania. Prečo to teda Microsoft neurobí ako predvolený PowerShell v systéme Windows?

Aktuálny PowerShell, ktorý je predinštalovaný s novšími systémami Windows, je PowerShell 5.1. Toto je posledná verzia PowerShell, ktorá používa rámec .NET. Aj keď je pravda, že jeho nasledujúce verzie poskytujú lepšie funkcie, Windows PowerShell má stále jednu výhodu, ktorú novší PowerShell nemá – úplnú spätnú kompatibilitu.

Prvý PowerShell bol vydaný 14. novembra 2006. Bolo to vtedy, keď Windows Vista a XP boli stále najnovším operačným systémom Windows. Podľa výskum od enlyftuLen v Spojených štátoch je viac ako 46 000 spoločností, ktoré stále používajú Windows XP. Tieto spoločnosti jednoducho nemôžu upgradovať na najnovší PowerShell, pretože by to spôsobilo veľa problémov so spätnou nekompatibilitou dokonca aj s integrovaným modulom Windows Compatibility v PowerShell 7.

Pre veľké spoločnosti a rôzne kritické infraštruktúry (bankomaty, dodávatelia energie, železnice, nemocnice atď.) oneskorenie služba na týždne až mesiace len na opätovné zostavenie, testovanie a nasadenie skriptov, ktoré už fungovali s PowerShell 5.1, jednoducho nie je možnosť. Nevadí všetkým chybám, ktoré sa môžu objaviť počas skutočných prevádzkových hodín.

Keďže PowerShell 5.1 je najnovší PowerShell postavený na. NET, je zaručené, že bude fungovať so všetkými predchádzajúcimi verziami PowerShell, dokonca aj s verziou vydanou v roku 2006.

Mali by ste inovovať na PowerShell 7?

PowerShell 7 prináša mnoho užitočných aktualizácií, ktoré vďaka podpore viacerých platforiem zjednodušujú, zrýchľujú a uľahčujú prácu s príkazovým riadkom a skriptovanie. Na rozdiel od toho Windows PowerShell poskytuje úplnú spätnú kompatibilitu so všetkými staršími PowerShell pred PowerShell 6. Mali by ste teda pokračovať v používaní prostredia Windows PowerShell alebo inovovať na novší PowerShell 7?

Dobrá vec na PowerShell 7 je, že bol navrhnutý tak, aby koexistoval s Windows PowerShell 5.1. Okrem integrovaného modulu Windows Compatibility, PowerShell 7 tiež poskytuje samostatnú inštalačnú cestu, názov spustiteľného súboru, cestu PSModulePath a denníky udalostí, aby sa zabezpečilo, že nebude zasahovať do už nainštalovaného systému Windows PowerShell.

Takže pre veľkú väčšinu ľudí, ktorí chcú vyskúšať nové funkcie PowerShell 7, to určite môžu urobiť pri zachovaní predvoleného prostredia Windows PowerShell. Ak ste zvedaví, či je novší PowerShell pre vás, určite by ste mali vyskúšať novší PowerShell.

Aj keď PowerShell 7 poskytuje dobrú spätnú kompatibilitu, vždy budú existovať určité nezrovnalosti v dôsledku rozdielov v rámci. Ak pracujete v spoločnosti alebo organizácii, ktorá sa vo veľkej miere spolieha na vlastné nástroje a programy vytvorené z prostredia Windows PowerShell, migrácia podnikového systému do prostredia PowerShell 7 nemusí byť dobrý nápad.

PowerShell 7 poskytol veľa aktualizácií, ale tiež vypustil niekoľko starších modulov a cmdletov. Ak ste človek, ktorý je už spokojný s predvoleným prostredím PowerShell, potom naozaj nie je dôvod na migráciu, najmä ak nemáte čas na čítanie dokumentácie.

PowerShell 7 zrýchľuje skriptovanie

PowerShell 7 je jednou z najnovších stabilných verzií PowerShell s dlhodobou podporou (LTS). Poskytuje rýchlejší a jednoduchší spôsob používania PowerShell, aj keď používate iné operačné systémy ako macOS alebo Linux. Aj keď čítanie dokumentácie môže chvíľu trvať, v konečnom dôsledku ušetríte viac času, keď sa naučíte používať nové aktualizácie.