Hoe upgrade ik de PowerShell-versie op Windows?

Hoe u PowerShell kunt bijwerken: van 5.1 naar PowerShell Core 7.x zonder gek te worden

Je bent waarschijnlijk tegen een probleem aangelopen: Windows PowerShell 5.1 voldoet niet meer, vooral als je die nieuwe functies of platformonafhankelijke ondersteuning wilt gebruiken. Aan de andere kant kan het installeren van PowerShell Core 7.3 wat verwarrend zijn – het is niet zomaar een app-update, maar een installatie waarbij beide versies naast elkaar worden geïnstalleerd, wat soms je bestaande scripts in de war kan brengen. Daarom is deze handleiding bedoeld om de meest voorkomende problemen te bespreken en uit te leggen hoe je je PowerShell-configuratie kunt herstellen of upgraden zonder je bestaande instellingen te verstoren. Spoiler: het is een beetje technisch, maar absoluut te doen. Je krijgt zowel PowerShell 5.1 volledig bijgewerkt (indien nodig) als de nieuwste PowerShell Core, terwijl je oude scripts gewoon blijven werken. De sleutel is om te begrijpen wat elk platform doet, wanneer je moet upgraden en hoe je alles integreert zonder iets kapot te maken. Want Windows moet het natuurlijk altijd ingewikkelder maken dan nodig.

Hoe u verwarring over PowerShell-versies kunt oplossen en uzelf kunt upgraden in Windows.

Upgrade Windows PowerShell naar versie 5.1 — Een noodzaak als u nog steeds een oude Windows-versie gebruikt.

Windows PowerShell 5.1 is al geïnstalleerd in recente Windows-versies zoals Windows 10 en Server 2016+.Maar als je Windows 7, Windows 8.1 of oudere serverbesturingssystemen gebruikt, moet je dit handmatig doen. Controleer je huidige versie met deze eenvoudige opdracht:

$PSVersionTable. PSVersion

Als het een versie lager is dan 5.1, download dan het *Windows Management Framework 5.1*-pakket. Het is niet de meest elegante methode, maar het werkt wel: – Zorg ervoor dat uw. NET Framework up-to-date is, met name. NET 4.5.2 of nieuwer. Om dit te controleren, voert u het volgende commando uit:

(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' -Name Release).Release

– Als uw releasenummer lager is dan 378675, moet u. NET bijwerken naar versie 4.8 (hier vindt u het offline installatieprogramma: https://go.microsoft.com/fwlink/?linkid=2088631 ).- Download en installeer het *WMF 5.1*-pakket voor uw besturingssysteem. Voor Windows Server 2012 R2 is het bestand bijvoorbeeld Win8.1AndW2K12R2-KB3191564-x64.msu (hier vindt u de link: https://go.microsoft.com/fwlink/?linkid=839516 ).- Start de computer opnieuw op na de installatie. Wanneer u een PowerShell-venster opent, zou versie 5.1 in de prompt moeten verschijnen. Zo niet, start de computer dan opnieuw op of controleer uw PATH.*Let op:* Op niet-ondersteunde Windows-versies zoals de oudere 7/2008 R2 is dit proces vrijwel hetzelfde, maar zorg er eerst voor dat uw systeem. NET Framework 4.5.2 of hoger aankan. Soms werkt het namelijk vreemd genoeg niet goed.

PowerShell Core 7.3 installeren of upgraden — De nieuwkomer

PowerShell Core (nu gewoon PowerShell genoemd) is een aparte, platformonafhankelijke oplossing. Het vervangt Windows PowerShell niet, maar bestaat ernaast. Dit betekent dat u versie 5.1 kunt blijven gebruiken voor oudere toepassingen en PowerShell 7.3 kunt gebruiken voor nieuwere opdrachten of beheer op afstand. De installatie is eenvoudig, maar er zijn meerdere manieren: – Met behulp van het MSI-installatieprogramma: Download het bestand van de [PowerShell GitHub-releasespagina](https://github.com/PowerShell/PowerShell).Download bijvoorbeeld *PowerShell-7.3.3-win-x64.msi*.Tip: Kies altijd een stabiele of LTS-versie voor productieomgevingen. Voer het MSI-bestand uit met beheerdersrechten en controleer de installatieopties, met name “PowerShell toevoegen aan PATH” en “Extern beheer inschakelen” als u beheerdersrechten op afstand nodig hebt.- Via de opdrachtregel (PowerShell + winget): Als je [winget](https://github.com/microsoft/winget-cli) hebt, kun je installeren/bijwerken met: powershell winget install –id Microsoft. Powershell –source winget En om bij te werken: powershell winget upgrade –id Microsoft. Powershell – Via de Microsoft Store: Op Windows 10/11 is PowerShell Core ook beschikbaar in de Microsoft Store, die zichzelf automatisch bijwerkt. Zoek gewoon naar “PowerShell” in de Store of voer uit: powershell winget search powershell –source msstore Installeer vervolgens direct. Het grootste voordeel hiervan? Het wordt automatisch bijgewerkt, maar het feit dat het in de Store wordt gebruikt, is natuurlijk niet voor iedereen ideaal.- Een PowerShell-script gebruiken: U kunt ook een automatische installatie uitvoeren vanaf de opdrachtregel: powershell iex “& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI” Hiermee wordt een script opgehaald dat het downloaden en installeren van de nieuwste MSI-installatie stilzwijgend afhandelt.*Opmerking:* Als u zich in een beheerde omgeving bevindt, overweeg dan implementatie via groepsbeleid of softwarebeheertools in plaats van handmatige installaties.

Naast elkaar geplaatst — Houd beide apparaten draaiende zonder botsingen

Wat een beetje vreemd is, maar de installatie van PowerShell 7.3 heeft geen invloed op je bestaande Windows PowerShell 5.1. Ze staan ​​in verschillende mappen: – Windows PowerShell: ` $env:WINDIR\System32\WindowsPowerShell\v1.0 ` – PowerShell Core 7.x: ` $env:ProgramFiles\PowerShell\7 ` Het uitvoerbare bestand is `powershell.exe` voor de oudere versie, maar in PowerShell Core is het `pwsh.exe`.Om te controleren welke versie u gebruikt, kunt u het volgende proberen: powershell (Get-Command ‘pwsh’).Version Of, als u de externe versie vanuit een script wilt controleren: powershell Invoke-Command -ComputerName server01 -ScriptBlock { (Get-Command ‘pwsh’).Version } En om een ​​specifieke PowerShell-versie uit te voeren, zoals 4.0, kunt u het volgende aanroepen: powershell C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Version 4 —

En hoe zit het met updates en onderhoud?

Vanaf PowerShell 7.2 zijn automatische updates mogelijk als u installeert via MSI met de juiste opties — met name door de registerinstelling `UseMU` (ingesteld op 1) in `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShellCore` in te schakelen. Dit maakt gebruik van Windows Update, Microsoft Update of WSUS. Ga naar Instellingen > Update & beveiliging > Windows Update > Geavanceerde opties en zorg ervoor dat “Updates ontvangen voor andere Microsoft-producten” is aangevinkt. Wanneer u vervolgens ‘Controleren op updates’ uitvoert, ontvangt PowerShell Core zijn deel van de patches. Een andere truc is het gebruik van de PSWindowsUpdate-module, waarmee updates rechtstreeks vanuit PowerShell kunnen worden gestart: powershell Install-Module -Name PSWindowsUpdate Get-WindowsUpdate Install-WindowsUpdate Maar eerlijk gezegd is het voor de meeste gebruikers voldoende om automatische updates in te schakelen tijdens de MSI-installatie of te vertrouwen op de Store-versie.

Samenvatting

  • Zorg ervoor dat uw oude Windows PowerShell is bijgewerkt naar versie 5.1. Het is meestal verstandig om de nieuwste versie te hebben om verrassingen te voorkomen.
  • Installeer PowerShell Core 7.3 via MSI, winget of de Store, afhankelijk van uw voorkeur.
  • Beide programma’s werken prima naast elkaar; let alleen goed op welk uitvoerbaar bestand je gebruikt.
  • Gebruik de Windows Update/WSUS-opties als u wilt dat PowerShell Core automatisch wordt bijgewerkt.

Samenvatting

Het soepel laten draaien van beide versies is niet de grootste uitdaging; het gaat er meer om te begrijpen waarom je ze nodig hebt en hoe je ze up-to-date houdt. Zodra je ze allebei hebt ingesteld, kun je moeiteloos schakelen tussen de oude scripts en de nieuwste functies. Maak back-ups van je scripts, vooral als je nieuwe PowerShell Core-functies test; dingen kunnen soms wat onvoorspelbaar zijn. Hopelijk bespaart dit iemand een paar uur. Succes, en vergeet niet om je. NET Framework up-to-date te houden voordat je met WMF-pakketten aan de slag gaat!