Tutorial Powershell para iniciantes

⚡ Resumo Inteligente

O PowerShell Scripting é um mecanismo de automação orientado a objetos construído sobre a estrutura .NET. Ele combina cmdlets, scripts e uma linguagem de script para ajudar os administradores de TI a automatizar tarefas. Windows, gerenciar serviços e conectar máquinas remotas a partir de uma única linha de comando.

  • 🚀 Inicie o shell correto: Abra o PowerShell ou o PowerShell ISE no menu Iniciar e execute-o como Administrador quando precisar de privilégios elevados.
  • 🧩 Use cmdlets, não comandos de texto: Os cmdlets seguem um padrão de nomenclatura verbo-substantivo e retornam objetos .NET, de modo que a saída pode fluir para o próximo cmdlet por meio de um pipeline.
  • 🔐 Defina a política de execução com cuidado: Use o cmdlet Set-ExecutionPolicy com o RemoteSigned para equilibrar segurança e conveniência ao executar scripts .ps1.
  • 📁 Escreva scripts .ps1 reutilizáveis: Combine cmdlets, variáveis ​​e pipelines em um arquivo de texto com a extensão .ps1 para automatizar tarefas administrativas repetitivas.
  • 🤖 Combine o PowerShell com IA: Assistentes de IA transformam solicitações em linguagem simples em scripts do PowerShell prontos para serem executados e explicam cmdlets desconhecidos linha por linha.

Tutorial Powershell para iniciantes

O que é PowerShell?

Windows PowerShell é um mecanismo de automação orientado a objetos e uma linguagem de script. Foi projetado para profissionais de TI e administradores de sistemas que precisam controlar e automatizar a administração de Windows e outros aplicativos. O PowerShell amplia os conceitos aprendidos em Windows Prompt de comando e Windows Script Host com novos objetos, cmdlets e um poderoso pipeline.

Ele combina a flexibilidade de scripts, a velocidade da linha de comando e a abrangência de uma ferramenta administrativa com interface gráfica. Com ele, os administradores podem resolver problemas de forma eficiente e eliminar horas de trabalho manual. Este tutorial aborda os conceitos essenciais para você aprender PowerShell do zero.

Por que usar o PowerShell?

Os principais motivos para usar o PowerShell são:

  • Oferece uma experiência de linha de comando bem integrada ao sistema operacional.
  • Fornece acesso completo a todos os tipos no framework .NET.
  • Utilizado por administradores de sistemas em diversas empresas.
  • Permite manipular componentes de servidor e estação de trabalho com poucas linhas de código.
  • Projetado para administradores de sistemas, com uma sintaxe clara de verbo-substantivo.
  • Mais seguro do que correr VBScript ou outras linguagens de script legadas.

História do PowerShell

O PowerShell 1.0 foi lançado pela primeira vez em 2006. Atualmente, o PowerShell está na versão 7.2 e posteriores. Com o lançamento de novas versões, suas capacidades e ambientes de hospedagem cresceram significativamente.

Histórico de versões do PowerShell:

  • PowerShell1.0 — apoiou a administração local de Windows Servidor 2003.
  • PowerShell2.0 — integrado com Windows 7 e Windows Servidor 2008 R2. Adicionados recursos de acesso remoto, transações, tarefas em segundo plano, eventos e depuração.
  • PowerShell3.0 — enviado com Windows 8 e Windows Servidor 2012 como parte do Windows Framework de gerenciamento. Adicionadas tarefas agendadas, conectividade de sessão e carregamento automático de módulos.
  • PowerShell4.0 — enviado com Windows 8.1 e Windows Server 2012 R2. Adicionada a Configuração de Estado Desejado, depuração aprimorada e diagnósticos de rede.
  • PowerShell5.0 — parte de Windows Framework de Gerenciamento 5. Adicionou depuração remota, definições de classe e enumerações .NET.
  • PowerShell7.2 — Desenvolvido em .NET 6.0. Adiciona novos operadores, visualizações de erros dinâmicas e notificações automáticas de versão.

Funcionalidades do PowerShell

  • PowerShell Remoting: Invocar scripts e cmdlets em uma máquina remota.
  • Empregos de apoio: Executar scripts ou pipelines de forma assíncrona na máquina local ou em várias máquinas remotas.
  • Transações: Permitir que cmdlets e desenvolvedores executem operações agrupadas que podem ser confirmadas ou revertidas em conjunto.
  • CCE: Ouvir, antecipar e agir de acordo com eventos de gestão e do sistema.
  • Transferência de arquivos em rede: Suporte nativo para transferência de arquivos priorizada, assíncrona e com controle de velocidade entre máquinas através do Serviço de Transferência Inteligente em Segundo Plano (BITS).

Como iniciar o PowerShell

O PowerShell vem pré-instalado em todas as versões recentes de WindowsExecute-o da seguinte forma.

Passo 1) Procure pelo PowerShell em WindowsEm seguida, selecione e clique.

Inicie o PowerShell

Passo 2) A janela do PowerShell é aberta.

Janela PowerShell

Cmdlet vs. Comando

A cmdlet (pronuncia-se "command-let") é um comando leve usado no ambiente PowerShell. O PowerShell invoca cmdlets no prompt, e você pode criar os seus próprios usando as APIs do PowerShell. Os cmdlets diferem dos comandos tradicionais do shell das seguintes maneiras:

  • Os cmdlets são Framework .NET Objetos de classe; eles não podem ser executados como executáveis ​​independentes.
  • Os cmdlets podem ser escritos com apenas uma dúzia de linhas de código.
  • A análise sintática, a formatação da saída e a apresentação de erros são gerenciadas pelo ambiente de execução, e não pelo próprio cmdlet.
  • Os cmdlets funcionam com objetos, portanto, fluxos de texto e objetos podem ambos fluir pelos pipelines.
  • Os cmdlets são baseados em registros e processam um único objeto por vez.

A maior parte da funcionalidade do PowerShell é fornecida por meio de cmdlets, que sempre usam um padrão de nomenclatura verbo-substantivo (sempre no singular). Os cmdlets retornam objetos, não texto. escrita — diferente de um cmdlet — é uma série de comandos armazenados em um arquivo de texto com o .ps1 extensão.

Os verbos comuns que você usará para aprender PowerShell incluem:

  • BAIXE — recuperar algo.
  • Começar — execute alguma coisa.
  • — produzir alguma coisa.
  • Dê um basta — parar algo que está em execução.
  • Conjunto — definir algo.
  • New — criar algo.

Comandos importantes do PowerShell

Obter ajuda: Veja a ajuda para comandos e tópicos do PowerShell.

Exemplo: exibir ajuda para o Format-Table comando.

Get-Help Format-Table

cmdlet Get-Help

Obter comando: Obtenha informações sobre qualquer coisa que possa ser invocada.

Exemplo: gerar uma lista de cmdlets e funções instaladas na máquina.

Get-Command

cmdlet Get-Command

Obter serviço: Encontra todos os serviços na máquina.

Exemplo: obtenha todos os serviços cujo nome começa com “vm”.

Get-Service "vm*"

cmdlet Get-Service

Obter membro: Mostrar o que pode ser feito com um objeto.

Exemplo: listar os membros dos serviços de máquina virtual retornados por Get-Service.

Get-Service "vm*" | Get-Member

cmdlet Get-Member

Outros cmdlets úteis:

  • Get-Module — Exibir pacotes de comandos instalados.
  • Get-Content — ler um arquivo e processar seu conteúdo.
  • Get-* curinga — lista todos os cmdlets que começam com “Get-“.

Exemplo: criar uma pasta.

New-Item -Path 'X:\Guru99' -ItemType Directory

Saída:

Saída de novo item

Tipos de dados do PowerShell

O PowerShell oferece suporte aos tipos de dados padrão do .NET, permitindo que você armazene qualquer valor de forma organizada em uma variável.

Tipos de dados do PowerShell

Variáveis ​​Especiais

O PowerShell expõe diversas variáveis ​​especiais internas. As mais úteis estão listadas abaixo.

Variável Especial Descrição
$Erro Uma matriz de objetos de erro representando os erros mais recentes.
$Hospedeiro Exibe o nome do aplicativo de hospedagem atual.
$Perfil Armazena o caminho completo do perfil do usuário para o shell padrão.
$ PID Armazena o identificador do processo.
$PSUICultura Contém o nome da cultura de interface do usuário atual.
$NULO Contém um valor vazio ou nulo.
$Falso Contém o valor booleano FALSE.
$Verdadeiro Contém o valor booleano VERDADEIRO.

Scripts do PowerShell

Os scripts do PowerShell são armazenados em .ps1 Por padrão, não é possível executar um script clicando duas vezes nele — essa medida de segurança protege o sistema contra danos acidentais. Para executar um script, clique com o botão direito do mouse sobre ele e escolha “Executar com o PowerShell”.

Executar com o PowerShell

Uma política de execução controla quais scripts têm permissão para serem executados. Veja a política atual com Get-ExecutionPolicyOs valores possíveis incluem:

  • Restrito — Nenhum script é permitido. Esta é a configuração padrão.
  • Tudo assinado — Somente scripts assinados por um desenvolvedor confiável podem ser executados, e cada um deles requer confirmação.
  • Assinado Remoto — seus próprios scripts são executados, além de scripts assinados de fontes confiáveis.
  • sem restrições — Qualquer script pode ser executado (use com moderação).

Passos para alterar a política de execução:

Passo 1) Abra um prompt do PowerShell com privilégios elevados clicando com o botão direito do mouse no PowerShell e selecionando Executar como Administrador.

Execute o PowerShell como administrador.

Passo 2) Execute os comandos abaixo.

  1. Get-ExecutionPolicy
  2. Set-ExecutionPolicy Unrestricted
  3. Entrar Y na tela de confirmação.
  4. Get-ExecutionPolicy

Alterar política de execução

Primeiro script do PowerShell

Abra o Bloco de Notas e digite:

Write-Host "Hello, Guru99!"

Salve o arquivo com um .ps1 extensão — por exemplo, FirstScript.ps1.

Salvar FirstScript.ps1

No PowerShell, execute o script com o seguinte comando:

& "X:\FirstScript.ps1"

Execute o FirstScript.ps1

O que é PowerShell ISE?

O Windows Ambiente de script integrado do PowerShell (ISE) O ISE é o editor padrão do PowerShell. Nele, você pode executar comandos, escrever testes e depurar scripts em um ambiente gráfico baseado em janelas. Ele oferece suporte à edição de várias linhas, coloração de sintaxe, preenchimento automático com a tecla Tab, execução seletiva e muito mais.

O PowerShell ISE também oferece um painel de console que executa comandos diretamente, enquanto painéis laterais exibem o código-fonte dos seus scripts e quaisquer ferramentas conectadas ao ISE. Você pode abrir várias janelas de script simultaneamente — o que é útil para depurar scripts que dependem de funções definidas em outros scripts ou módulos.

PowerShell ISE

Recrie o script anterior no ISE:

  1. Cole o código no editor.
  2. Salve o script.
  3. Pressione F5 para executar.
  4. Observe a saída no painel do console.

Executar script no ISE

Amostra 2: O seguinte script exibe gratuitamente memória virtual na máquina.

Get-WmiObject -Class Win32_OperatingSystem -ComputerName localhost |
Select-Object -Property CSName, FreeVirtualMemory

Script gratuito de memória virtual

PowerShell Concepts

Os seguintes conceitos formam o vocabulário do trabalho diário com PowerShell.

O Conceito Descrição
Cmdlets Comandos integrados escritos em linguagens .NET, como VB ou C#. Os desenvolvedores ampliam o conjunto carregando ou escrevendo snap-ins do PowerShell.
Funções Comandos escritos diretamente na linguagem PowerShell, sem a necessidade de uma IDE como... Visual Studio.
Scripts Arquivos de texto no disco com o .ps1 extensão.
Aplicações Existente Windows programas invocados a partir do shell.
E se Indica ao cmdlet para não ser executado, mas sim para descrever o que aconteceria se fosse executado.
Confirmar Instrui o cmdlet a solicitar confirmação antes de executar.
Verboso Fornece um nível mais elevado de detalhamento operacional.
depurar Instrui o cmdlet a emitir informações de depuração.
Ação de erro Define o que o cmdlet faz em caso de erro. Valores permitidos: continue, stop, silentlycontinue, inquire.
Variável de erro Indica a variável que armazena informações de erro.
Variável externa Indica ao cmdlet para armazenar sua saída em uma variável específica.
Buffer Armazena um número específico de objetos antes de enviá-los pelo pipeline.

Vantagens de usar scripts do PowerShell

  • Os scripts do PowerShell são poderosos e concisos — você pode realizar muito em apenas algumas linhas.
  • As variáveis ​​são declaradas com o $<variable> sintaxe.
  • As variáveis ​​podem armazenar a saída de comandos, objetos e valores primitivos.
  • Não é necessário especificar explicitamente o tipo da variável.

PowerShell vs. Prompt de Comando

PowerShell Prompt de comando
Profundamente integrado com WindowsOferece uma linha de comando interativa e uma linguagem de script completa. Interface de linha de comando padrão fornecida por MicrosoftUm aplicativo Win32 simples que se comunica com outros objetos Win32.
Utiliza cmdlets que podem ser invocados interativamente ou por meio de scripts de automação. Sem cmdlets.
Trata a saída como objetos para que ela possa fluir para outro cmdlet através do pipeline. A saída é um fluxo de texto simples, não objetos.
Avançado em funcionalidades, capacidades e arquitetura interna. Interface básica, adequada para tarefas em lote legadas.

Aplicações do PowerShell

O PowerShell tornou-se a escolha padrão para administradores de TI porque reduz drasticamente o esforço em grandes redes corporativas. Imagine gerenciar mais de quatrocentos servidores e implementar uma nova solução de segurança que depende de um serviço específico em execução em cada host.

Fazer login manualmente em cada servidor é lento e propenso a erros. Um único script do PowerShell pode inspecionar todos os servidores em minutos, informar quais hosts já executam o serviço e até mesmo habilitá-lo nos demais. O script captura a intenção uma única vez e a aplica de forma confiável em toda a infraestrutura.

Perguntas Frequentes

O PowerShell automatiza Windows Administração de sistemas — gerenciamento de serviços, arquivos, usuários e servidores — por meio de uma linha de comando orientada a objetos e uma linguagem de script construída sobre a estrutura .NET.

Um cmdlet é um objeto de classe .NET leve que usa um nome verbo-substantivo e retorna objetos. Um comando tradicional em outros shells gera texto simples e lida com sua própria análise e formatação.

O PowerShell trabalha com objetos e oferece suporte a cmdlets, scripts e integração profunda com o .NET. O Prompt de Comando é um shell básico baseado em texto, cujos comandos geram texto simples em vez de objetos.

Um arquivo .ps1 é um script do PowerShell — um arquivo de texto que contém um ou mais comandos do PowerShell. Por padrão, ele não pode ser executado clicando duas vezes; ele é executado a partir do console ou com a opção "Executar com o PowerShell".

Abra o PowerShell como administrador e execute o comando Set-ExecutionPolicy com um valor como RemoteSigned ou Unrestricted e confirme. Em seguida, use o comando Get-ExecutionPolicy para verificar a configuração atual.

O Ambiente de Script Integrado (ISE) é o editor de GUI integrado do PowerShell para escrever, executar, testar e depurar scripts, com recursos como coloração de sintaxe, preenchimento automático com a tecla Tab e várias abas de script.

Os assistentes de IA sugerem cmdlets, explicam o comportamento de scripts e detectam erros enquanto você digita. Eles ajudam os administradores a automatizar tarefas mais rapidamente e a converter solicitações em linguagem natural em comandos PowerShell funcionais.

Sim. Os assistentes de código com IA geram scripts PowerShell completos a partir de uma descrição em linguagem simples, como "listar todos os serviços interrompidos e reiniciá-los", e explicam cada cmdlet para que você possa revisar antes de executar.

Resuma esta postagem com: