Op 18 maart 2026 maakte het PowerShell-team de algemene beschikbaarheid van PowerShell 7.6 bekend. De aankondiging, geschreven door Jason Helmick, noemt 7.6 de volgende Long Term Support-release en de aanbevolen versie voor productie-automatisering. De release is gebouwd op .NET 10, zelf ook een LTS-versie.
Voor organisaties die beheertaken in PowerShell hebben vastgelegd, is een nieuwe LTS het natuurlijke moment om de basis te vernieuwen. Dit artikel loopt door wat 7.6 brengt, waar bestaande scripts op moeten worden nagekeken en hoe de release beschikbaar komt.
LTS: waarom dit de versie is om op te standaardiseren
PowerShell 7 kent twee soorten releases: reguliere versies die kort worden ondersteund, en LTS-versies met een langere ondersteuningsperiode, gekoppeld aan de LTS-cyclus van het onderliggende .NET. Voor beheerautomatisering die maanden of jaren moet blijven draaien is een LTS de logische keuze: er zijn minder gedwongen upgrades en de basis blijft langer stabiel.
De aankondiging noemt geen concrete einddatum voor de ondersteuning van 7.6; die volgt uit het LTS-beleid van PowerShell en .NET 10. Wat wél vaststaat: 7.6 is de opvolger van 7.4 als LTS, en de aankondiging positioneert 7.6 uitdrukkelijk als de versie voor productie.
Bijgewerkte modules
Drie modules die met PowerShell worden meegeleverd zijn bijgewerkt:
- PSReadLine – de bewerkingslaag van de console
- Microsoft.PowerShell.PSResourceGet – het modulebeheer (opvolger van PowerShellGet)
- Microsoft.PowerShell.ThreadJob – vervangt de module ThreadJob
Die laatste verdient aandacht. De cmdlet Start-ThreadJob is niet veranderd, dus de meeste scripts merken niets. Wie de cmdlet echter met de modulegekwalificeerde naam aanroept (ThreadJob\Start-ThreadJob), moet die aanpassen naar Microsoft.PowerShell.ThreadJob\Start-ThreadJob. Dat staat in de documentatie onder de breaking changes.
Breaking changes
De lijst met wijzigingen die bestaand gedrag breken is kort, maar elk punt kan een script raken:
| Wijziging | Mogelijk effect |
|---|---|
Join-Path -ChildPath accepteert nu string[] | Code die het parametertype controleert of via reflectie bindt, kan anders reageren; gewoon gebruik met één string blijft werken |
WildcardPattern.Escape() escapet losse backticks correct | Patronen met een backtick kunnen andere uitvoer opleveren dan in 7.4 |
| Spatie aan het einde van een event-/tracebronnaam verwijderd | Logging of filters die op de oude naam met spatie matchen, matchen niet meer |
ThreadJob vervangen door Microsoft.PowerShell.ThreadJob | Alleen relevant bij modulegekwalificeerde aanroepen |
Testvolgorde bij een LTS-overstap
Draai bestaande scripts eerst in 7.6 naast 7.4, met dezelfde invoer, en vergelijk uitvoer en foutmeldingen. De breaking changes hierboven zijn klein en goed te herkennen; de moduleupdates (PSReadLine, PSResourceGet) zijn het meest zichtbaar in interactief gebruik en het minst in onbeheerde jobs.
Nieuwe parameters en cmdlet-verbeteringen
Een selectie uit de cmdlet-wijzigingen die in de praktijk het snelst nut hebben:
Get-Clipboard -Delimiter– klembordinhoud direct splitsen op een scheidingsteken.Register-ArgumentCompleter -NativeFallback– één algemene completer registreren voor alle native opdrachten die geen eigen completer hebben.Get-Command -ExcludeModule– bij het zoeken naar opdrachten modules uitsluiten, handig als meerdere modules dezelfde naam gebruiken.New-Item -Targetbehandelt de waarde nu letterlijk, wat het aanmaken van koppelingen naar paden met jokertekens voorspelbaarder maakt.Start-Process -Waitpollt efficiënter, wat merkbaar is in scripts die veel externe processen na elkaar starten.
Daarnaast zijn er de nieuwe aliassen PSForEach() en PSWhere() voor de intrinsieke methoden .ForEach() en .Where(). De oude namen blijven werken; de nieuwe voorkomen naamconflicten met eigen leden op objecten.
Tabaanvulling
Een groot deel van de changelog gaat over tab completion. De verbeteringen zijn talrijk en individueel klein: aliassen worden naar de werkelijke opdracht uitgebreid, de HelpMessage van een parameter verschijnt als tooltip, dubbele modulenamen en dubbele opdrachtnamen worden uit de resultaten gefilterd, variabelen die in lussen of via omleiding zijn toegewezen worden herkend, en de type-inferentie is op meerdere punten verbeterd. Voor interactief beheerwerk is het effect groter dan de afzonderlijke punten doen vermoeden.
Experimentele features
PowerShell gebruikt experimentele features om functionaliteit eerst optioneel aan te bieden. In 7.6 zijn vier daarvan mainstream geworden en dus standaard actief:
- PSFeedbackProvider – het raamwerk voor feedbackproviders in de console
- PSNativeWindowsTildeExpansion – uitbreiding van
~naar de thuismap bij native opdrachten op Windows - PSRedirectToVariable – uitvoer omleiden naar een variabele
- PSSubsystemPluginModel – het pluginmodel voor subsystemen
Twee nieuwe experimentele features komen erbij:
- PSSerializeJSONLongEnumAsNumber –
ConvertTo-Jsonbehandelt grote enums als getallen - PSProfileDSCResource – een DSC v3-resource voor het beheren van PowerShell-profielen
Die laatste is interessant voor wie configuratie van beheerwerkstations declaratief wil vastleggen, maar het blijft experimenteel en moet expliciet worden ingeschakeld.
Installatie en distributie
PowerShell 7.6 is beschikbaar via de GitHub-releases en de installatiehandleiding op Microsoft Learn. Het macOS-pakket (PKG) is met deze release genotariseerd en ondertekend door Microsoft, wat de installatie op beheerde Macs vereenvoudigt. Distributie via Microsoft Update volgt afzonderlijk en niet op dezelfde dag als de GitHub-release; de aankondiging noemt daarvoor geen datum.
Voor Windows-omgevingen die PowerShell 7 via Intune of een ander beheertool uitrollen, blijft het MSI-pakket de gangbare route. Wie onlangs de mogelijkheid heeft bekeken om Win32-apps in Intune met een PowerShell-script te installeren, vindt daarover meer in Intune januari 2026: PowerShell-script als installer voor Win32-apps.
Wat dit betekent voor bestaande automatisering
De overstap van 7.4 naar 7.6 is voor de meeste scripts klein. De breaking changes zijn beperkt tot randgevallen; de winst zit in de nieuwe .NET-basis, de bijgewerkte modules en de vele kleine verbeteringen in completion en cmdlets. Scripts die tegen Microsoft Graph of Exchange Online werken, zoals beschreven in Message trace in Exchange Online via Microsoft Graph, zijn afhankelijk van hun eigen modules en niet van de PowerShell-versie zelf; ook daar geldt dat een test in 7.6 het snelst duidelijkheid geeft.
De aanbeveling uit de aankondiging is eenduidig: 7.6 is de LTS voor productie. Wie nog op 7.4 draait, heeft nu een duidelijk doel voor de volgende onderhoudsronde.
Bronnen
- Announcing PowerShell 7.6 – PowerShell Team Blog, 18 maart 2026
- What's New in PowerShell 7.6 – Microsoft Learn


