Sistema de ajuda
Esta aula ensina a utilizar o sistema de ajuda do PowerShell, incluindo os cmdlets Get-Help, Update-Help e Get-Command, além de como acessar exemplos práticos com o parâmetro -Examples. O aluno aprenderá a obter documentação detalhada, atualizar a ajuda local e descobrir comandos disponíveis.
O PowerShell possui um sistema de ajuda integrado que é uma das suas ferramentas mais poderosas para aprendizado e produtividade. Em vez de depender de pesquisas externas, você pode acessar documentação detalhada, exemplos e parâmetros de qualquer cmdlet diretamente no console. Nesta aula, vamos explorar os principais cmdlets relacionados à ajuda: Get-Help, Update-Help e Get-Command. Dominar esses comandos é essencial para se tornar proficiente em PowerShell, pois permite descobrir e entender rapidamente como usar qualquer funcionalidade.
O sistema de ajuda do PowerShell é baseado em arquivos de ajuda instalados localmente ou disponíveis online. Por padrão, a ajuda pode não estar totalmente instalada, mas você pode baixá-la com um comando simples. Vamos começar com o cmdlet mais importante: Get-Help.
Get-Help
O cmdlet Get-Help exibe informações de ajuda sobre cmdlets, funções, scripts e outros conceitos do PowerShell. É o equivalente ao man do Linux ou help do CMD, mas muito mais rico. Você pode usá-lo de várias formas:
- Básico:
Get-Help Get-Processmostra a sinopse, sintaxe e descrição. - Detalhado:
Get-Help Get-Process -Detailedadiciona descrições de parâmetros e exemplos. - Completo:
Get-Help Get-Process -Fullinclui informações técnicas, como tipos de entrada e saída. - Exemplos:
Get-Help Get-Process -Examplesmostra apenas exemplos práticos. - Parâmetros:
Get-Help Get-Process -Parameter Namefoca em um parâmetro específico. - Online:
Get-Help Get-Process -Onlineabre a documentação mais recente no navegador.
Se a ajuda não estiver instalada localmente, o PowerShell pode exibir uma mensagem sugerindo usar Update-Help. Você também pode usar curingas: Get-Help *process* lista todos os tópicos que contêm "process".
Exemplo prático:
# Obter ajuda básica sobre Get-Service
Get-Help Get-Service
# Exibir ajuda detalhada
Get-Help Get-Service -Detailed
# Mostrar apenas exemplos
Get-Help Get-Service -Examples
Update-Help
O cmdlet Update-Help baixa e instala os arquivos de ajuda mais recentes do PowerShell do módulo Microsoft.PowerShell.Core e de outros módulos. Sem a ajuda local atualizada, Get-Help pode mostrar apenas informações básicas ou sugerir o uso de -Online. Para garantir que você tenha a documentação completa offline, execute:
# Atualizar ajuda para todos os módulos
Update-Help
Você pode especificar módulos individuais com o parâmetro -Module:
# Atualizar apenas o módulo ActiveDirectory (se instalado)
Update-Help -Module ActiveDirectory
Para forçar a atualização mesmo que os arquivos estejam atualizados, use -Force. Se a sua máquina não tiver acesso à internet, você pode usar Save-Help em uma máquina com internet e depois Update-Help -SourcePath para instalar a partir de um caminho local.
Observação: A primeira execução do Update-Help pode demorar um pouco, pois baixa toda a documentação. Execute como administrador se houver restrições de permissão.
# Exemplo: Atualizar ajuda com força
Update-Help -Force
Exemplos (-Examples)
O parâmetro -Examples do Get-Help é uma das maneiras mais rápidas de aprender como usar um cmdlet. Ele exibe apenas os exemplos práticos, sem a teoria. Cada exemplo mostra o comando, uma descrição e a saída esperada.
Por exemplo, para ver como usar Get-ChildItem (equivalente ao dir):
Get-Help Get-ChildItem -Examples
Isso exibirá exemplos como:
-------------------------- Exemplo 1: Obter itens do diretório atual --------------------------
PS C:\> Get-ChildItem
Diretório: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 01/01/2023 10:00 Pasta1
-a---- 01/01/2023 10:00 1234 arquivo.txt
Use -Examples sempre que quiser ver rapidamente como aplicar um cmdlet. É um recurso didático excelente para iniciantes e especialistas.
Get-Command
O cmdlet Get-Command descobre todos os comandos disponíveis no PowerShell: cmdlets, funções, aliases, scripts e aplicativos. Ele é fundamental para explorar o que você pode fazer. Exemplos de uso:
- Listar todos os comandos:
Get-Command(pode ser extenso). - Filtrar por nome:
Get-Command *service*encontra comandos com "service" no nome. - Filtrar por tipo:
Get-Command -CommandType Cmdletmostra apenas cmdlets. - Filtrar por módulo:
Get-Command -Module Microsoft.PowerShell.Management. - Obter sintaxe detalhada:
Get-Command Get-Process -Syntaxexibe a sintaxe completa. - Encontrar um comando por verbo:
Get-Command -Verb Getlista todos os comandos que começam com "Get-".
Exemplo prático:
# Listar todos os cmdlets que começam com "Set"
Get-Command -Verb Set -CommandType Cmdlet
# Mostrar a sintaxe de um comando específico
Get-Command Set-ExecutionPolicy -Syntax
Combine Get-Command com Get-Help para aprender rapidamente qualquer comando. Por exemplo, Get-Command *process* | Get-Help exibe ajuda para todos os comandos relacionados a processo.
Boas práticas
- Sempre mantenha a ajuda atualizada com
Update-Helpperiódico. - Use
-Examplespara ver exemplos antes de ler a documentação completa. - Use
Get-Commandcom filtros para descobrir comandos relevantes. - Prefira
Get-Help -Onlinequando precisar da documentação mais recente. - Considere criar aliases para comandos de ajuda frequentes, como
Set-Alias gh Get-Help.
Referências
- Documentação oficial do Get-Help
- Documentação oficial do Update-Help
- Documentação oficial do Get-Command
- Sobre o sistema de ajuda do PowerShell
- Ajuda baseada em comentários
- Getting Started with PowerShell
Exercícios
- Use
Get-Helppara exibir a ajuda detalhada do cmdletGet-ChildItem. Qual é a descrição do parâmetro-Recurse? - Atualize a ajuda local do PowerShell usando
Update-Help. Se já estiver atualizada, use-Force. Qual foi a saída do comando? - Use
Get-Helpcom o parâmetro-Examplespara o cmdletSelect-Object. Quantos exemplos são exibidos? - Encontre todos os cmdlets que possuem o verbo
InvokeusandoGet-Command. Liste três deles. - Use
Get-Helppara abrir a ajuda online do cmdletGet-Process. Qual URL é aberta no navegador?
Get-Help Get-ChildItem -Detailed e procure a descrição do parâmetro -Recurse. A descrição é: "Obtém os itens no local especificado e em todos os itens filhos dos contêineres." (ou similar em português).
Update-Help -Force. A saída típica mostra uma lista de módulos sendo atualizados, com informações de versão e status. Exemplo: "Atualizando ajuda para o módulo Microsoft.PowerShell.Core".
Get-Help Select-Object -Examples. Normalmente são exibidos 6 exemplos (dependendo da versão). O número exato pode variar, mas geralmente entre 5 e 7.
Get-Command -Verb Invoke. Exemplos comuns: Invoke-Command, Invoke-Expression, Invoke-WebRequest.
Get-Help Get-Process -Online. A URL típica é: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-process.