Módulos do PowerShell que transformaram meu fluxo de trabalho

Módulos do PowerShell que transformaram meu fluxo de trabalho

Se você ainda depende de scripts personalizados do PowerShell para transferências simples de arquivos ou geração de relatórios do Excel, é hora de otimizar seu fluxo de trabalho. Módulos pré-criados do PowerShell podem lidar com a maioria das tarefas rotineiras com muito mais eficiência do que qualquer coisa que você possa criar manualmente.

Para começar a usar esses módulos, certifique-se de estar executando pelo menos o PowerShell 5.1. Embora muitos módulos sejam compatíveis com o PowerShell 7 em diversas plataformas, alguns podem ser limitados ao Windows. Também é crucial habilitar a execução de scripts ajustando sua política de execução da seguinte forma:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned -Force

Ao instalar módulos, use consistentemente o parâmetro -Scope CurrentUser para eliminar a necessidade de permissões administrativas.

6 PSReadLine

Incluído por padrão no PowerShell, o PSReadLine costuma ser subutilizado, mesmo por usuários experientes. Este módulo aprimora sua experiência de linha de comando com recursos como destaque de sintaxe, edição multilinha e recursos preditivos do IntelliSense.

Terminal PowerShell com o módulo PSReadLine instalado
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

Para obter a versão mais recente do PSReadLine, use o seguinte comando:

Install-Module -Name PSReadLine -Scope CurrentUser -Force

Habilitar o IntelliSense aprimorará seu histórico de comandos, fornecendo sugestões conforme você digita. Ative-o com:

Set-PSReadLineOption -PredictionSource HistorySet-PSReadLineOption -PredictionViewStyle ListView

Após a execução de alguns comandos anteriores, como ipconfig ou Get-Service, o IntelliSense sugerirá opções do seu histórico conforme você começa a digitar. Você pode navegar por essas sugestões usando as teclas de seta para cima e para baixo, confirmando sua seleção com a tecla Enter.

5 Importar Excel

Com mais de 14 milhões de downloads, o ImportExcel é uma escolha popular para usuários que desejam criar planilhas do Excel sem precisar do próprio Excel — ideal para ambientes de servidor ou scripts de automação.

Importar módulo do Excel no terminal do PowerShell
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

Para instalar o ImportExcel, digite o seguinte comando:

Install-Module -Name ImportExcel -Scope CurrentUser

Este módulo pode executar tarefas que vão desde exportações básicas até funções mais complexas, como tabelas dinâmicas e formatação condicional. Por exemplo, para exportar informações sobre processos em execução para uma planilha formatada, use:

Get-Service | Where-Object {$_.Status -eq "Running"} |Export-Excel -Path "ServiceReport.xlsx" -AutoSize -TableStyle Medium9 -FreezeTopRow

Este comando reúne todos os serviços ativos e os exporta para um arquivo Excel, formatando as colunas para ajustar o conteúdo e congelando a linha de cabeçalho para maior conveniência.

Relatório Excel gerado pelo ImportExcel
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

4 PSWriteHTML

O PSWriteHTML permite que você transforme a saída do PowerShell em relatórios HTML, completos com tabelas e gráficos, sem exigir conhecimento prévio de codificação HTML.

Comando de exportação do módulo PSWriteHTML
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

Instale o módulo com o comando:

Install-Module -Name PSWriteHTML -Scope CurrentUser

Para criar um relatório do sistema destacando os dez principais processos por uso da CPU, use:

Import-Module PSWriteHTML;$procs = Get-Process | Select-Object Name, CPU, WorkingSet -First 10New-HTML -TitleText "System Report" -FilePath "Report.html" -ShowHTML {New-HTMLSection -HeaderText "Process Information" {New-HTMLTable -DataTable $procs -Filtering -Buttons @('copyHtml5', 'excelHtml5')}}

O HTML gerado apresenta recursos de classificação, filtragem e exportação baseados em JavaScript.

Resultado da exportação do módulo PSWriteHTML
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

3 PSWindowsUpdate

Como o módulo mais popular na Galeria do PowerShell, com mais de 33 milhões de downloads, o PSWindowsUpdate oferece cmdlets projetados especificamente para gerenciar o Windows Update Client.

Módulo PowerShell PSWindowsUpdate
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

Instale-o usando o seguinte comando:

Install-Module -Name PSWindowsUpdate -Scope CurrentUser

Este módulo fornece cmdlets para gerenciamento abrangente do Windows Update — ideal para automatizar tarefas. Verifique se há atualizações pendentes em vários servidores simultaneamente com:

$Servers = 'SERVER01', 'SERVER02', 'SERVER03'Invoke-Command -ComputerName $Servers -ScriptBlock {Import-Module PSWindowsUpdate<|image_sentinel|>Get-WindowsUpdate -MicrosoftUpdate | Select-Object @{n='Computer';e={$env:COMPUTERNAME}}, KB, Title, Size, IsDownloaded, IsInstalled, RebootRequired} | Sort-Object Computer, KB | Format-Table -AutoSize

Isso revela rapidamente atualizações pendentes em seus servidores. Você pode instalar atualizações específicas, ocultar atualizações problemáticas ou agendar instalações convenientemente. Utilize o parâmetro -AcceptAll para ignorar os prompts de confirmação.

2 ícones de terminal

Renove sua experiência com o terminal do PowerShell com o Terminal-Icons, que adiciona ícones reconhecíveis aos arquivos em listagens de diretórios. Cada tipo de arquivo é representado com seu ícone e cor exclusivos, melhorando a visibilidade e facilitando a navegação.

Módulo PowerShell Terminal-Icons
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

Para instalar, execute:

Install-Module -Name Terminal-Icons -Scope CurrentUser

Este módulo aprimora a saída de Get-ChildItem. Após a instalação, para ver os ícones, use:

Import-Module Terminal-Icons

Posteriormente, ao executar Get-ChildItem ou seus aliases, cada tipo de arquivo exibirá seu respectivo ícone e cor. Os scripts do PowerShell exibirão o logotipo do PowerShell e as pastas exibirão os ícones de pasta designados. Essa atualização estética não apenas melhora a aparência do seu terminal, como também ajuda a identificar arquivos rapidamente ao navegar entre as guias. Observe que a instalação de uma fonte Nerd é necessária para que os ícones sejam renderizados corretamente.

Módulo Terminal-Icons PowerShell com Get-ChildItem
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

1 Transferetto

Transferetto é um módulo do PowerShell projetado para simplificar a interação com FTP, FTPS e SFTP. Em vez de se aprofundar em classes. NET ou utilizar ferramentas de terceiros, ele oferece cmdlets intuitivos e nativos do PowerShell.

Módulo Transferetto PowerShell
Crédito da imagem – auto-capturado (Tashreef Shareef) – Atribuição não necessária

Para instalar o Transferetto, use:

Install-Module -Name Transferetto -Scope CurrentUser

O fluxo de trabalho é muito semelhante ao dos módulos de banco de dados: conectar, executar tarefas e desconectar:

$Client = Connect-FTP -Server "ftp.example.com" -Credential (Get-Credential)Send-FTPFile -Client $Client -LocalPath "C:\Reports\Report1.xlsx" -RemotePath "/uploads/"Disconnect-FTP -Client $Client

Além das funções básicas, o Transferetto acomoda configurações SSL, métodos de criptografia, opções de validação de certificado e o comando Request-FTPConfiguration, que pode testar automaticamente as configurações de conexão do seu servidor.

Além disso, ele não se restringe a arquivos individuais; você pode carregar diretórios inteiros usando o Send-FTPDirectory ou até mesmo realizar transferências FXP (cópia de arquivos de servidor para servidor).Com suporte para SFTP e SSH, ele também permite que você execute comandos remotos em conjunto com suas transferências de arquivos.

Como o Transferetto opera no Windows PowerShell 5.1 e no PowerShell 7+, seus scripts permanecem funcionais nas plataformas Windows, Linux e macOS sem exigir nenhuma modificação.

Mesmo que seu uso do PowerShell se limite a tarefas básicas, familiarizar-se com vários módulos pode transformar sua eficiência. Módulos como o PSReadLine aceleram a digitação com sugestões preditivas, o ImportExcel permite o gerenciamento fácil de planilhas sem o Excel e os ícones de terminal aprimoram a legibilidade da interface do seu terminal.

Uma vasta gama de módulos está disponível na Galeria do PowerShell. Certifique-se de verificar a compatibilidade e o histórico de atualizações antes da instalação. Comece com um ou dois módulos que atendam diretamente às suas necessidades mais urgentes e, em seguida, expanda gradualmente seu kit de ferramentas à medida que se sentir mais confortável.

Fonte e Imagens

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *