Lista de novos recursos do PowerShell 7

A próxima versão principal do PowerShell foi lançada e traz algumas mudanças significativas. A Sétima versão inclui recursos como execução paralela, importação de módulos para execução remota, novos operadores e muito mais. Nesta postagem, veremos todos os novos(New) recursos do PowerShell 7.0 .

Recursos do PowerShell 7

Alterações no diretório do PowerShell

Ao instalar o PowerShell 7(install PowerShell 7) , ele será instalado em um novo diretório e executado junto com o PowerShell 5.1 . Se você estiver atualizando do PowerShell Core 6.x , ele substituirá o diretório do PowerShell 6 e removerá todos os arquivos desnecessários. Aqui está a lista de diretórios que você deve conhecer:

O PowerShell 7 está instalado para-

%programfiles%\PowerShell\7

A pasta  %programfiles%\PowerShell\7 é adicionada a $env:PATH

Os pacotes do instalador do PowerShell 7 atualizam as versões anteriores do PowerShell Core 6.x :

PowerShell Core 6.x no Windows:(PowerShell Core 6.x on Windows:)

%programfiles%\PowerShell\6

é substituído por 

%programfiles%\PowerShell\7

Linux:

/opt/microsoft/powershell/6

é substituído por 

/opt/microsoft/powershell/7

macOS: 

/usr/local/microsoft/powershell/6

é substituído por

/usr/local/microsoft/powershell/7

Novos recursos no PowerShell 7

Tentei explicar resumidamente cada um desses recursos e como isso ajudará os usuários do (users)PowerShell . No entanto, certifique-se de ler com mais detalhes na página oficial da Microsoft .

  1. Paralelização de pipeline
  2. Novos operadores
  3. cmdlet ConciseView e Get-Error
  4. Notificações automáticas de novas versões
  5. Invocar(Invoke DSC) recursos DSC diretamente do PowerShell 7
  6. Camada de compatibilidade

Certifique-se sempre de verificar a variável de ambiente(Environment Variable) antes de testar os códigos reais.

1] Paralelização de pipeline

Agora você pode executar ou manipular objetos em paralelo em vez do método de sequência ao usar ForEach-Object -Parallel. Em nosso post sobre desinstalação do WIM , esse método pode desmontar três imagens WIM em pouco menos de 10 segundos em vez de quase 25 segundos quando executado em sequência. Aqui está um código de exemplo para ele:

Get-WindowsImage -Mounted | foreach -Parallel {Measure-Command {Dismount-WindowsImage -Discard -Path $_.Path}}

2] Novos operadores

Existem três novos operadores — Ternary operator: a ? b : c, Pipeline chain operators: || and && and Null conditional operators: ?? and ??=.Estes se comportam como se comportam como uma instrução if-else simplificada. (behaves like a simplified if-else statement.)Eles facilitam escrever o código em vez de usar o loop If-else o tempo todo.

3] cmdlet ConciseView(ConciseView) e Get-Error

Obter comando de erro Let PowerShell 7

ConciseView é uma exibição selecionável pelo usuário que é habilitada como a exibição padrão do PowerShell 7 . Se o erro não for do script, você receberá um erro de linha única. No entanto, se for do script ou houver um erro de análise, você receberá uma mensagem de erro de várias linhas e um ponteiro mostrando em qual linha o erro ocorreu.

Então você tem um novo cmdlet Get-Error que pode ajudá-lo a obter uma visão detalhada do erro quando desejado. Ele pode exibir detalhes completos, incluindo exceções internas, do último erro ocorrido.

$Error | Get-Error

Get-Error -Newest 3 # Displays the last three errors that occurred in the session

4 ] Notificações automáticas de novas versões(] Automatic)

A partir do PowerShell 7 , o sistema verificará as atualizações uma vez por dia e notificará sobre uma nova versão, se disponível. As informações são mostradas apenas no início das sessões subsequentes. Há três sinalizadores disponíveis para atualização do PowerShell(PowerShell Update)

  • Versões padrão(Default ) de GA, visualização e RC
  • Desligado(Off) Â desativa o recurso de notificação de atualização
  • LTS Â apenas notifica atualizações para versões de GA de serviço de longo prazo ( LTS )

Se você deseja desativar as notificações de atualização no PowerShell 7 , execute este comando na janela do PowerShell .

$Env:POWERSHELL_UPDATECHECK = 'Off'

5] Invoque recursos DSC(Invoke DSC) diretamente do PowerShell 7

O cmdlet Invoke-DscResource(Invoke-DscResource) executa  um método de um recurso de configuração de estado desejado do PowerShell(PowerShell Desired State Configuration) ( DSC ) especificado. É um recurso experimental.

Using this cmdlet, configuration management products can manage Windows or Linux by using DSC resources. This cmdlet also enables debugging of resources when the DSC engine is running with debugging enabled.

6] Camada de compatibilidade

Ele permite que os usuários do PowerShell importem módulos em uma sessão implícita do Windows PowerShell(Windows PowerShell) . Usando isso, você poderá executar o comando real como uma sessão no computador remoto e retornar os resultados para a sessão local. Agora que ele suporta a importação de módulos, você pode executar esses módulos em computadores remotos.

O PowerShell(PowerShell) é um software de código aberto disponível no Linux e no macOS também. É ótimo ver tantos recursos novos no PowerShell 7 e esperamos que continue crescendo. Você pode ler mais sobre isso em Microsoft(about it on Microsoft) .



About the author

Sou especialista em informática e trabalho com computadores há muitos anos. Tenho experiência com Apple iPhone e Microsoft Windows 10. Minhas habilidades incluem: usar computadores para criar, criptografar e armazenar dados; encontrar e corrigir falhas no software; e resolução de problemas. Tenho conhecimento em todas as áreas de uso do computador, incluindo Apple iOS, Microsoft Windows 10, proteção contra ransomware e muito mais. Estou confiante de que minhas habilidades seriam valiosas para sua empresa ou organização.



Related posts