Microsoft is rolling out a new major feature for PowerShell, available both developers and admins. Known as PowerShell Crescendo, the new tool will make the platform more accessible to low-knowledge dev's.
Microsoft explains it knows native commands in PowerShell can be complex, which is why a simpler solution is necessary.
“Many of today's modern native commands are complex, they themselves are mini-shells with their own mini-language containing sub levels, or sub contexts. If you've worked with kubectl, docker or netsh.exe, you have experienced the complexity of executing and automating these commands.”
According to Microsoft, PowerShell Crescendo wraps common commands to function within cmdlets. This makes it easier by hiding the syntax of commands and reflecting them as objects that dev's can interact with.
PowerShell Crescendo comes with a framework for creating cmdlets for commands, including the following:
- Clear naming convention – Verb-Noun
- Consistent parameter naming for similar uses
- Output consisting of objects
- Common method of getting command help
- Easy to work with objects in a pipeline
- Easy to share using Modules
Users can get Microsoft.PowerShell.Crescendo now, although only in preview (build 0.4.0), from here. This document also provides extensive details on how the new tool works and how dev's can leverage it in PowerShell.
As for PowerShell in general, last month Microsoft launched version 7.1 of its automating and scripting language.
While there are no sweeping changes in PowerShell 7.1, it makes some tweaks and additions to version 7. For example, new modules and tooling are available on the build. However, while these are available in the preview, Microsoft says they may not be available for the version 7.1 general release.