O que é o Powershell 7?

Para quem não conhece, o PowerShell 7 é a mais recente atualização importante do PowerShell, uma ferramenta de automação de plataforma cruzada (Windows, Linux e macOS) e estrutura de configuração otimizada para lidar com dados estruturados (por exemplo, JSON, CSV, XML, etc.), REST APIs e modelos de objetos. O PowerShell inclui um shell de linha de comando, linguagem de script orientada a objetos e um conjunto de ferramentas para executar scripts / cmdlets e gerenciar módulos.

Há três anos, anunciamos o PowerShell Core 6 como uma edição completamente nova do PowerShell. Construído sobre o .NET Core, o PowerShell Core introduziu suporte multiplataforma no Windows, macOS e Linux, PowerShell Remoting baseado em SSH, suporte massivamente aprimorado para REST e JSON, contêineres oficiais do Docker e muito mais. Além disso, foi a primeira versão do PowerShell feita sob uma licença de código-fonte aberto (MIT), incentivando os entusiastas do PowerShell de longa data e concluindo os novatos a contribuírem diretamente para o código-fonte, testes e documentação.

Ler mais:
Corrigir erro de pesquisa do Windows 10 – Guia 02/2020
Nova atualização do Windows 10 remove arquivos do desktop
4 cursos para você que quer aprender Windows Server
A Microsoft está retirando suas certificações MCSA, MCSD e MCSE em junho de 2020

Após três lançamentos bem-sucedidos do PowerShell Core, não poderíamos estar mais animados com o PowerShell 7, o próximo capítulo do desenvolvimento contínuo do PowerShell. Com o PowerShell 7, além da variedade usual de novos cmdlets / APIs e correções de bugs , estamos apresentando vários novos recursos, incluindo:

  • Paralelização de pipeline com ForEach-Object -Parallel
  • Novos operadores:
    • Operador ternário: a ? b : c
    • Operadores da cadeia de tubulações: ||e&&
    • Operadores coalescentes nulos: ??e??=
  • Uma visualização de erro simplificada e dinâmica e Get-Errorcmdlet para facilitar a investigação de erros
  • Uma camada de compatibilidade que permite aos usuários importar módulos em uma sessão implícita do Windows PowerShell
  • Notificações automáticas de nova versão
  • A capacidade de chamar para chamar recursos DSC diretamente do PowerShell 7 (experimental)

Para obter uma lista mais completa dos recursos e correções, consulte as notas de versão do PowerShell 7.0 .

A mudança do PowerShell Core 6.x para 7.0 também marca nossa mudança do .NET Core 2.x para 3.1. O .NET Core 3.1 traz de volta um host de APIs do .NET Framework (especialmente no Windows), permitindo significativamente mais compatibilidade com os módulos existentes do Windows PowerShell. Isso inclui muitos módulos no Windows que exigem funcionalidade da GUI como Out-GridViewShow-Command, além de muitos módulos de gerenciamento de função que são fornecidos como parte do Windows. Para obter mais informações, consulte nossa tabela de compatibilidade de módulos, mostrando como é possível os módulos mais recentes e atualizados que funcionam com o PowerShell 7.

Se você não conseguiu usar o PowerShell Core 6.x no passado devido a problemas de compatibilidade de módulos, talvez seja a primeira vez que você aproveita alguns dos incríveis recursos que já fornecemos desde o início do projeto Core!

Impressionante! Como obtenho o PowerShell 7?

Primeiro, confira nossos documentos de instalação para Windows , macOS ou Linux . Dependendo da versão do seu sistema operacional e do formato de pacote preferido, pode haver vários métodos de instalação.

Se você já sabe o que está fazendo e está apenas procurando por um pacote binário (seja um MSI, ZIP, RPM ou qualquer outra coisa), acesse a última versão do GitHub .

Além disso, convém usar uma de nossas muitas imagens de contêiner do Docker . Para obter mais informações sobre como usá-los, consulte nosso repositório do PowerShell-Docker .

Quais sistemas operacionais o PowerShell 7 suporta?

O PowerShell 7 suporta os seguintes sistemas operacionais em x64, incluindo:

  • 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+
  • Alpine Linux 3.8 ou superior

Além disso, suportamos os sabores ARM32 e ARM64 do Debian e Ubuntu, bem como o ARM64 Alpine Linux.

Embora não seja oficialmente suportada, a comunidade também forneceu pacotes para o Arch e o Kali Linux .

Se você precisar de suporte para uma plataforma que não foi listada aqui, envie uma solicitação de distribuição no GitHub (embora seja importante notar que estamos limitados pelo que é suportado pelo .NET Core 3.1 ).

Espere, o que aconteceu com o PowerShell “Core”?

Assim como o .NET decidiu fazer o .NET 5 , acreditamos que o PowerShell 7 marca a conclusão de nossa jornada para maximizar a compatibilidade com o Windows PowerShell. Para esse fim, consideramos o PowerShell 7 e além como o verdadeiro PowerShell daqui para frente.

O PowerShell 7 ainda será observado na edição “Core” para diferenciar o 6.x / 7.x do Windows PowerShell, mas, em geral, você o verá como “PowerShell 7” daqui para frente.

Quais produtos da Microsoft já oferecem suporte ao PowerShell 7?

Qualquer módulo que já seja suportado pelo PowerShell Core 6.x também é suportado no PowerShell 7, incluindo:

No Windows, também adicionamos uma -UseWindowsPowerShellopção para Import-Modulefacilitar a transição para o PowerShell 7 para aqueles que usam módulos ainda incompatíveis. Essa opção cria um módulo proxy no PowerShell 7 que usa um processo local do Windows PowerShell para executar implicitamente todos os cmdlets contidos nesse módulo. Para obter mais informações sobre essa funcionalidade, consulte a documentação do módulo de importação .

Para esses módulos ainda incompatíveis, estamos trabalhando com várias equipes para adicionar suporte nativo ao PowerShell 7, incluindo Microsoft Graph, Office 365 e muito mais.

O Azure Cloud Shell já foi atualizado para usar o PowerShell 7, e outros, como as imagens do contêiner do .NET Core SDK Docker e as Funções do Azure , serão atualizados em breve.

Como o PowerShell 7 é oficialmente suportado pela Microsoft?

Assim como no PowerShell Core, o PowerShell 7 é um produto suportado por uma ampla variedade de clientes com contratos de suporte existentes da Microsoft.

Com o PowerShell 7, estamos migrando para um ciclo de vida de suporte, no qual correspondemos ao ciclo de vida do tempo de execução .NET subjacente que distribuímos como parte do PowerShell. Isso significa que o PowerShell 7.0 é uma versão de serviço de longo prazo (LTS) que será suportada por aproximadamente 3 anos a partir de 3 de dezembro de 2019 (a data de lançamento do .NET Core 3.1).

Você pode encontrar mais informações sobre o ciclo de vida do suporte do PowerShell em https://aka.ms/pslifecycle

O que vem a seguir para o PowerShell?

Já estamos trabalhando duro no PowerShell 7.1 e você deve esperar sua primeira visualização em breve, repleta de novos recursos e correções de erros que não chegaram ao 7.0. Fique atento a um blog de roteiro mais detalhado, descrevendo nossas investigações e desejos atuais para o 7.1.

Conforme observado acima, também estamos migrando para uma cadência anual de lançamentos, a fim de nos alinharmos melhor com os lançamentos .NET e seu ciclo de vida de suporte (com as visualizações continuando lançando aproximadamente a cada mês).

Referência: Microsoft Devblogs

Acompanhe as novidades em tempo real. Siga nosso perfil no Instagram..

Felipe Santos
Felipe Santos é Arquiteto de Cloud e Segurança, com vivência em Administração de Ambientes Windows Server, Cluster, Storages, Backups Veeam e Office 365.
pt_BRPortuguese

ATÉ 90% DE DESCONTO

DECOLE SUA CARREIRA!!

Quer dar um upgrade na sua carreira? 

Invista em você e saia na frente! Conquiste aquele emprego dos sonhos em 2022!