PowerShell 7 is Now Available for Windows, Linux and macOS
If you have been hanging around the Petri neighborhood, you might be mistaken to think that PowerShell 7 is already available. But up until today, it was in preview.
Microsoft is making PowerShell 7 now generally available which means that the cross-platform automation tool is available for Windows, Linux, and macOS. Along with a bunch of cmdlets/APIs and bug fixes, there are several new features as well:
- Pipeline parallelization with ForEach-Object -Parallel
- New operators:
- Ternary operator: a ? b : c
- Pipeline chain operators: || and &&
- Null conditional 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 DSC resources directly from PowerShell 7 (experimental)
This release also completes the move from .NET Core 2.x back to 3.1. What this means is that backward compatibility will be significantly improved over that of PowerShell 6, especially on Windows; if you were not using an old script because of compatibility issues, you may want to give it a run again.
Since the early preview days of PowerShell 7, we have been diving deep looking at the new features; you can find more information here.
Passwords Haven’t Disappeared Yet
123456. Qwerty. Iloveyou. No, these are not exercises for people who are brand new to typing. Shockingly, they are among the most common passwords that end users choose in 2021. Research has found that the average business user must manually type out, or copy/paste, the credentials to 154 websites per month. We repeatedly got one question that surprised us: “Why would I ever trust a third party with control of my network?
The compatibility list for PowerShell 7 is quite lengthy and includes products Microsoft no longer supports:
- Windows 7, 8.1, and 10
- Windows Server 2008 R2, 2012, 2012 R2, 2016, and 2019
- macOS 10.13+
- Red Hat Enterprise Linux (RHEL) / CentOS 7+
- Fedora 29+
- Debian 9+
- Ubuntu 16.04+
- openSUSE 15+
- Alpine Linux 3.8+
- ARM32 and ARM64 flavors of Debian and Ubuntu