What you need to know
- PowerShell 7 is now generally available.
- This update marks PowerShell 7 as the "one, true PowerShell" moving forward, Microsoft says.
- PowerShell 7 is packed with new features and better backwards compatibility.
Microsoft today launched PowerShell 7, the latest major revision of its cross-platform PowerShell Core automation tool and configuration framework. The update comes with some significant changes, new features, and improved backwards compatibility. Going forward, PowerShell 7 will be the "one, true PowerShell" as well, supplanting the previous stratification between Windows PowerShell and PowerShell Core.
One of the biggest changes in this release is the move from .NET Core 2.x to version 3.1. ".NET Core 3.1 brings back a host of .NET Framework APIs (especially on Windows), enabling significantly more backwards compatibility with existing Windows PowerShell modules," Microsoft said in a blog post announcing the release. "This includes many modules on Windows that require GUI functionality like Out-GridView and Show-Command, as well as many role management modules that ship as part of Windows."
Here's a rundown of some of the new features included in PowerShell 7:
- Pipeline parallelization with ForEach-Object -Parallel
- Ternary operator: a ? b : c
- Pipeline chain operators: || and &&
- Null coalescing operators: ?? and ??=
A simplified and dynamic error view and Get-Error cmdlet for easier investigation of errors
- A compatibility layer that enables users to import modules in an implicit Windows PowerShell session
- Automatic new version notifications
- The ability to invoke to invoke DSC resources directly from PowerShell 7 (experimental)
You can check out PowerShell 7 by snagging the latest release at GitHub. PowerShell 7 is cross-platform, and it supports Windows, macOS, and various Linux releases.
We may earn a commission for purchases using our links. Learn more.