Desenvolvedores da Microsoft revelados recentemente, por meio de uma postagem no blog da Microsoft, lançando a nova versão final do PowerShell7, que já está disponível para Windows, macOS e Linux. Este último apresenta novos recursos relacionados ao suporte para .Net Core e novas operadoras.
PowerShell é otimizado para automatizar operações de linha de comando e fornece ferramentas integradas para processar dados estruturados em formatos como JSON, CSV e XML, e também suporta API REST e modelos de objeto.
Além do shell de comando, uma linguagem orientada a objetos é oferecida para scripts e um conjunto de utilitários para gerenciamento de módulos e scripts.
Começando com o branch PowerShell 6, o projeto foi desenvolvido usando a plataforma .NET Core. Por padrão, o PowerShell transfere a telemetria com a descrição do sistema operacional e a versão do programa (para desabilitar a telemetria, você deve definir a variável de ambiente POWERSHELL_TELEMETRY_OPTOUT = 1 antes de iniciar).
O que há de novo no PowerShell 7?
Em resumo, PowerShell 7 integra as seguintes alterações: migração da versão .Net Core 2.x para a nova versão 3.1 e introdução dos operadores ternários “a? b: c ", atribuição e mesclagem zero"? e ?? = «.
com o atualização de .Net Core 2.x para 3.1 introduzido nesta nova versão do PowerShell 7 é permite maior compatibilidade com módulos PowerShell existente para Windows.
“Se você não conseguiu usar o PowerShell Core 6.x no passado devido a problemas de compatibilidade entre módulos, esta pode ser a primeira vez que você poderá tirar proveito de alguns dos excelentes recursos que já fornecemos. Desde o início do projeto PowerShell Core! «, Enfatiza a Microsoft.
Ele acrescenta que:
»A passagem do PowerShell Core 6.x para 7.0 também marca nossa passagem do .NET Core 2.x para 3.1.
NET Core 3.1 recupera um grande número de APIs do .NET Framework (especialmente no Windows), que permite uma compatibilidade muito maior com os módulos existentes Windows PowerShell. Isso inclui muitos módulos do Windows que requerem a funcionalidade da GUI, como Out-GridView e Show-Command, bem como muitos módulos de gerenciamento de funções que vêm com o Windows.
A lista completa de sistemas operacionais suportados é oferecida como variantes x64 do Windows 7, 8.1 e 10, Windows Server 2008 R2, 2012, 2012 R2, 2016 e 2019, macOS 10.13+, Red Hat Enterprise Linux (RHEL) / CentOS 7+, Fedora 29+, Debian 9+, Ubuntu 16.04+, openSUSE 15+ e Alpine Linux 3.8+.
Os sabores Debian e Ubuntu ARM32 e ARM64 também são suportados, assim como ARM64 Alpine Linux. A Microsoft afirma que, embora sem suporte oficial, existem pacotes produzidos pela comunidade para Arch e Kali Linux. PowerShell 7 está disponível para download no GitHub e também há documentação de instalação disponível para Windows, macOS e Linux.
A Microsoft já está analisando o PowerShell 7.1, cuja primeira prévia será lançada em breve. Até que voltemos aos novos recursos que tornam o PowerShell 7 especial:
- .NET Core 3.1 (LTS)
- Envelope de compatibilidade do Windows
- notificação de nova versão
- nova visualização de erro e cmdlet Get-Error
- operadores de cadeia de tubos (&& e |||)
- operador ternário (a? b: c)
- atribuição nula e operadores de coalescência (??? e ?? =)
- plataforma cruzada invoke-DscResource (experimental)
- out-GridView, -ShowWindowWindow e outros cmdlets GUI estão de volta ao Windows
Por fim, se você quiser saber mais sobre isso, você pode conferir os detalhes no link a seguir.
Como instalar o PowerShell 7 no Linux?
Para aqueles interessados em instalar esta nova versão do PowerShell em seu sistema, pode preparar os pacotes para diferentes distribuições de Linux do link a seguir
Embora em geral eles podem instalar o aplicativo com a ajuda de pacotes Snap, o único requisito é que seu sistema tenha suporte para instalar esses tipos de pacotes e ter o serviço instalado.
Para instalar basta abrir um terminal e executar o seguinte comando nele:
snap install powershell --classic
Finalmente, no caso de optar por pacotes especialmente construídos para cada distribuição.
A instalação pode ser feita com seu gesto de pacote ou a partir do terminal com dpkg (para pacotes deb ou com rpm ou dnf (para pacotes rpm).
Por exemplo, no caso de pacotes deb:
sudo dpkg -i powershell-7.0.0-1*.deb
No caso de RPM em distribuições gerais com:
sudo rpm -i powershell-7.0.0-1*.rpm
Ou no caso do Fedora ou RHEL:
sudo dnf -i powershell-7.0.0-1*.rpm
Viúvas até na sopa. Anda já! Mudei para o Linux para esquecer e dedico-me a mexer com a calçadeira.