Windows PowerShell is een integraal onderdeel van het Windows-besturingssysteem. Het is een opdrachtregelshell en een scripttaal die wordt gebruikt om tijdrovende repetitieve taken te automatiseren, aangepaste beheertools te maken en oplossingen voor verschillende andere problemen te bouwen, testen en implementeren.

De standaard PowerShell-versie die voorverpakt is in het Windows-besturingssysteem is PowerShell 5.1, of gewoon Windows PowerShell. Maar nu PowerShell 7 al is uitgebracht en stabiel is, is het dan niet logischer dat het Windows-besturingssysteem de nieuwste versie van PowerShell gebruikt? Welke voordelen biedt PowerShell 7 sowieso? En is het de upgrade waard? Laten we erover praten!

Wat is PowerShell 7?

PowerShell 7 is de nieuwste LTS-releaseversie van PowerShell. Deze versie van PowerShell is ontwikkeld via het nieuwere .NET Core-framework, dat verschillende grote updates mogelijk maakt die ervaren Windows-gebruikers nuttig zullen vinden.

PowerShell 7 is geregistreerd en gelicentieerd onder de MIT-licentie. Het is nu

instagram viewer
open source software, waar mensen vrijelijk hun eigen exemplaar van de broncode van de software kunnen bekijken, wijzigen en verspreiden. Ontwikkelaars kunnen ook bijdragen aan de officiële PowerShell-releases door lid te worden De officiële GitHub-pagina van PowerShell.

Met zijn community-ondersteuning is deze versie van PowerShell nu platformonafhankelijk! Dit betekent dat het nu kan worden geïnstalleerd en gebruikt op Windows, macOS en Linux. Hier is een lijst van het ondersteunde x64-besturingssysteem:

  • Windows 8.1, 10, 11
  • Windows Server 2012, 2012 R2, 2016 en 2019
  • macOS 10.13+
  • Red Hat Enterprise Linux (RHEL) / CentOS 7
  • Fedora30+
  • Debian9
  • Ubuntu LTS 16.04+

Alpine Linux 3.8+ PowerShell 7 wordt ook ondersteund op verschillende ARM32- en ARM64-distributies van Debian, Ubuntu en ARM64 Alpine Linux. Voor geïnteresseerden zijn er ook niet-ondersteunde pakketten voor Arch en Kali Linux.

Wat zijn de nieuwe functies in PowerShell 7?

Afbeelding tegoed: Windows/Unsplash

Behalve dat het platformonafhankelijk en open source is, heeft PowerShell 7 nog vele andere nieuwe functies die de productiviteit verder verbeteren. Hier zijn een paar van de meer opvallende:

1. Verbeterde achterwaartse compatibiliteit

Met het verschil in framework zullen Windows PowerShell- en PowerShell-versies die het .NET Core-framework gebruiken, onverenigbaar zijn. Om het voor mensen gemakkelijker te maken om over te stappen, integreert PowerShell 7 nu de WindowsCompatibility-module. Deze module is ontworpen om Windows PowerShell-modules en vele andere mogelijk te maken populaire CMD-opdrachten werken in PowerShell 7.

2. Pijplijn parallellisatie met ForEach-Object

PowerShell 7 heeft nu een parallelle parameter. In Windows PowerShell wordt elk doorgesluisd object dat de cmdlet ForEach-Object gebruikt één voor één uitgevoerd. Maar met de nieuwe parameter Parallel worden alle doorgesluisde objecten nu gelijktijdig uitgevoerd. Dit verbetert de prestaties drastisch, wat u tijd kan besparen.

3. Ternaire operatoren

Windows PowerShell-voorwaarden worden uitgevoerd via if-else-instructies. PowerShell 7 maakt dit nog eenvoudiger door de introductie van ternaire operatoren, die in feite vereenvoudigde versies zijn van de if-else-instructies door "?" en ":" in de syntaxis. Deze functie zorgt voor een snellere en schonere scriptervaring.

4. Pijpleiding Keten Operators

Pijplijnoperators zijn een belangrijk kenmerk van Windows PowerShell. Hiermee kunt u complexe uitdrukkingen maken door de uitvoer van een cmdlet te nemen en deze op een andere cmdlet te gebruiken. Dit is echter beperkt omdat Windows PowerShell geen voorwaardelijke expressies kan verwerken met reguliere pijplijnoperatoren.

PowerShell 7 lost dit probleem op door operators voor pijplijnketens te introduceren, die "&&" en "||" zijn. Met deze nieuwe pijplijnoperator kan PowerShell opdrachten uitvoeren met voorwaardelijke uitdrukkingen.

Operator && wordt alleen gebruikt om het pijplijncommando aan de rechterkant uit te voeren als het commando vóór de operator succesvol is. Terwijl-operator || zal alleen het rechtshandige pijplijncommando uitvoeren als het commando voor de operator mislukt.

Waarom is PowerShell 7 niet de standaard op Windows?

Afbeelding tegoed: Mike Schinkel/Flickr

PowerShell 7 is een open-source platformonafhankelijke software die functies biedt die de prestaties en scriptsnelheid drastisch kunnen verbeteren. Dus waarom maakt Microsoft het niet de standaard PowerShell in Windows?

De huidige PowerShell die vooraf is geïnstalleerd met nieuwere Windows-systemen is PowerShell 5.1. Dit is de laatste PowerShell-versie die het .NET-framework gebruikt. Hoewel het waar is dat de volgende versies betere functies bieden, heeft Windows PowerShell nog steeds één voordeel dat de nieuwere PowerShell niet heeft: volledige achterwaartse compatibiliteit.

De eerste PowerShell werd uitgebracht op 14 november 2006. Dit was toen Windows Vista en XP nog het nieuwste Windows-besturingssysteem waren. Volgens onderzoek van enlyft, hebben alleen al in de Verenigde Staten meer dan 46.000 bedrijven nog steeds Windows XP. Deze bedrijven kunnen eenvoudigweg niet upgraden naar de nieuwste PowerShell, omdat dit een heleboel achterwaartse incompatibiliteitsproblemen zou veroorzaken, zelfs met de geïntegreerde WindowsCompatibility-module van PowerShell 7.

Voor grote bedrijven en verschillende kritieke infrastructuren (geldautomaten, energieleveranciers, spoorwegen, ziekenhuizen, enz.) Vertraging service voor weken tot maanden alleen maar om scripts die al werkten met PowerShell 5.1 opnieuw op te bouwen, te testen en te implementeren, is gewoon geen keuze. Let niet op alle bugs die tijdens de werkelijke bedrijfsuren kunnen optreden.

Aangezien PowerShell 5.1 de nieuwste PowerShell is die is gebouwd op de. NET-framework werkt het gegarandeerd met alle voorgaande versies van PowerShell, zelfs degene die in 2006 is uitgebracht.

Moet u upgraden naar PowerShell 7?

PowerShell 7 levert veel nuttige updates die de interface tussen de opdrachtregel en scripting eenvoudiger, sneller en handiger maken dankzij de platformonafhankelijke ondersteuning. Windows PowerShell daarentegen biedt volledige achterwaartse compatibiliteit met alle legacy PowerShell vóór PowerShell 6. Dus, moet u Windows PowerShell blijven gebruiken of upgraden naar de nieuwere PowerShell 7?

Het goede aan PowerShell 7 is dat het is ontworpen om naast Windows PowerShell 5.1 te bestaan. Afgezien van de geïntegreerde WindowsCompatibility-module, PowerShell 7 biedt ook een apart installatiepad, uitvoerbare naam, PSModulePath en gebeurtenislogboeken om ervoor te zorgen dat het de reeds geïnstalleerde Windows niet verstoort PowerShell.

Dus voor de grote meerderheid van de mensen die de nieuwe functies van PowerShell 7 willen uitproberen, kunnen ze dit zeker doen terwijl ze hun standaard Windows PowerShell behouden. Als je benieuwd bent of de nieuwere PowerShell iets voor jou is, dan moet je zeker de nieuwere PowerShell uitproberen.

Hoewel PowerShell 7 goede achterwaartse compatibiliteit biedt, zullen er altijd verschillen zijn vanwege hun verschillen in het framework. Als u bij een bedrijf of organisatie werkt dat sterk afhankelijk is van aangepaste tools en programma's gemaakt van Windows PowerShell, dan is het migreren van het bedrijfssysteem naar PowerShell 7 misschien geen goed idee.

PowerShell 7 zorgde voor veel updates, maar liet ook nogal wat verouderde modules en cmdlets vallen. Als u een persoon bent die al tevreden is met de standaard PowerShell, dan is er echt geen reden om te migreren, vooral als u geen tijd heeft om de documentatie te lezen.

PowerShell 7 maakt scripten sneller

PowerShell 7 is een van de nieuwste stabiele versies van PowerShell met Long Term Support (LTS). Het biedt een snellere en gemakkelijkere manier om PowerShell te gebruiken, zelfs als u andere besturingssystemen zoals macOS of Linux gebruikt. Hoewel het even kan duren om de documentatie te lezen, bespaart u uiteindelijk meer tijd als u eenmaal vertrouwd raakt met de nieuwe updates.