Os 10 principais comandos do PowerShell para iniciantes aprenderem primeiro (Get-Process, Set-Location, etc.)
Parabéns pela instalação do PowerShell! A sua máquina está agora equipada com um ambiente de shell moderno e potente para acelerar o seu desenvolvimento web. No entanto, é uma experiência comum para todos sentarem-se em frente ao ecrã preto (ou azul) e ficarem paralisados, a pensar: "Então, o que é que eu escrevo afinal?"
Não se preocupe. Graças à convenção de nomenclatura consistente Verbo-Substantivo dos comandos do PowerShell (cmdlets), eles são muito fáceis de aprender e aplicar assim que se apanha o jeito. Neste artigo, selecionámos cuidadosamente os 10 cmdlets básicos mais úteis que deve aprender primeiro, de entre os muitos disponíveis, que serão verdadeiramente úteis para as tarefas diárias de um criador web.
Assim como um guitarrista aprende alguns acordes básicos para começar a tocar várias músicas, ao dominar estes 10 comandos hoje, estará a dar o primeiro passo para gerir o Windows e lidar com operações de ficheiros com total liberdade. Agora, vamos realmente digitar os comandos e sentir o seu poder!
O Básico do Básico: Cmdlets para Navegação e Listagem
Primeiro, vamos cobrir os três cmdlets essenciais para as operações básicas do terminal: "verificar a sua localização atual", "mover-se" e "ver o que está dentro". Estes tornar-se-ão os seus "olhos" e "pés" no mundo da CUI.
1. Get-Location (aliases: pwd, gl)
Isto verifica o caminho completo do diretório em que se encontra atualmente. Desempenha o mesmo papel que o pwd no Bash и é a sua tábua de salvação quando se perde.
Get-Location
2. Set-Location (aliases: cd, sl, chdir)
Isto move-se para um diretório diferente. Pode usá-lo com a mesma sensação que o cd do Bash. É bom que o alias cd esteja disponível, não é?
# Mover para a pasta 'work' na unidade C:
Set-Location C:\work
3. Get-ChildItem (aliases: ls, dir, gci)
Isto exibe uma lista de ficheiros e pastas no diretório atual. Desempenha o mesmo papel que o ls no Bash e o dir na Linha de Comandos.
Get-ChildItem
É aqui que começa o verdadeiro valor do PowerShell. Usando a opção -Recurse, pode exibir recursivamente todos os itens, mesmo os que estão dentro de subpastas.
# Exibir tudo, incluindo o conteúdo das subpastas
Get-ChildItem -Recurse
Operações de Ficheiros: Cmdlets para Criar, Ver e Apagar
A seguir, vamos ver os cmdlets para manipular diretamente ficheiros e pastas. Estes tornar-se-ão as suas "mãos".
4. New-Item (alias: ni)
Isto cria novos ficheiros ou pastas. Especifica qual criar com -ItemType.
Criar um ficheiro vazio:
New-Item -Path ".\style.css" -ItemType File
Criar uma nova pasta:
New-Item -Path ".\assets" -ItemType Directory
5. Get-Content (aliases: cat, gc, type)
Isto exibe o conteúdo de um ficheiro de texto. É útil quando quer verificar rapidamente o conteúdo de um ficheiro de configuração.
Get-Content -Path ".\style.css"
6. Remove-Item (aliases: rm, del, erase, rmdir)
Isto apaga ficheiros e pastas. [IMPORTANTE] Este comando apaga permanentemente os ficheiros de imediato, sem os mover para a Reciclagem. Não pode ser desfeito, por isso, use-o com extremo cuidado.
Remove-Item -Path ".\style.css"
A Essência do PowerShell: Cmdlets para Lidar com Objetos
É aqui que o PowerShell realmente brilha. Vamos apresentar cmdlets que obtêm o estado e a informação do sistema como "objetos" e lhe permitem processá-los livremente.
7. Get-Process (alias: ps)
Isto obtém uma lista dos processos (programas) atualmente em execução como objetos. Inclui informação detalhada como o uso de CPU e memória.
Get-Process
8. Where-Object (aliases: where, ?)
Isto filtra os objetos passados pelo pipeline | com base em critérios especificados. Funciona como a cláusula WHERE em SQL.
Por exemplo, vamos extrair apenas os processos do Google Chrome de todos os processos em execução.
Get-Process | Where-Object { $_.ProcessName -eq "chrome" }
9. Sort-Object (alias: sort)
Isto ordena os objetos pelo valor de uma propriedade (atributo) especificada.
Vamos ordenar os processos do Chrome do exemplo anterior por uso de memória, em ordem decrescente.
Get-Process | Where-Object { $_.ProcessName -eq "chrome" } | Sort-Object -Property WS -Descending
10. Get-Help (aliases: help, man)
Este é o último que vamos apresentar, mas na verdade pode ser o comando mais importante. Get-Help é o seu tutor pessoal que lhe ensina a usar outros cmdlets. Se não sabe como usar um comando, experimente este primeiro.
Get-Help Get-Process
Adicionando a opção -Examples, pode ver exemplos de uso específicos.
Get-Help Get-Process -Examples
Conclusão
Ótimo trabalho! Desta vez, apresentámos 10 cmdlets básicos que serão as suas primeiras armas para explorar o mundo do PowerShell. Embora cada um seja simples, esperamos que tenha sentido como eles podem realizar tarefas surpreendentemente complexas quando encadeados com o pipeline.
O truque para aprender é memorizar os nomes completos Verbo-Substantivo, e não apenas os aliases. Se o fizer, conseguirá adivinhar comandos desconhecidos — "Quero obter X, por isso provavelmente é `Get-X`" — e a sua aprendizagem irá acelerar rapidamente.
Agora que domina os comandos básicos, o próximo passo é combinar este conhecimento para criar as suas próprias ferramentas de automação, ou seja, "scripts PowerShell". No próximo artigo, vamos explicar como escrever um script de automação de operações de ficheiros simples a partir do zero. Fique atento!