100 comandos PowerShell, organizada do básico ao avançado

 


Aqui está uma lista com 100 comandos PowerShell, organizada do básico ao avançado:

Comandos Básicos

  1. Get-Help
    Exibe a ajuda do PowerShell.

    Get-Help
    
  2. Get-Command
    Exibe todos os comandos disponíveis.

    Get-Command
    
  3. Get-Process
    Exibe a lista de processos em execução.

    Get-Process
    
  4. Stop-Process
    Finaliza um processo específico.

    Stop-Process -Name "notepad"
    
  5. Get-Service
    Exibe os serviços do sistema.

    Get-Service
    
  6. Start-Service
    Inicia um serviço.

    Start-Service -Name "wuauserv"
    
  7. Stop-Service
    Para um serviço em execução.

    Stop-Service -Name "wuauserv"
    
  8. Set-ExecutionPolicy
    Define a política de execução de scripts no PowerShell.

    Set-ExecutionPolicy RemoteSigned
    
  9. Get-EventLog
    Exibe logs de eventos.

    Get-EventLog -LogName "Application" -Newest 5
    
  10. Clear-Host
    Limpa a tela do PowerShell.

    Clear-Host
    

Comandos Intermediários

  1. Get-Content
    Exibe o conteúdo de um arquivo.

    Get-Content -Path "C:\temp\log.txt"
    
  2. Set-Content
    Define o conteúdo de um arquivo.

    Set-Content -Path "C:\temp\log.txt" -Value "Novo conteúdo"
    
  3. Add-Content
    Adiciona conteúdo a um arquivo existente.

    Add-Content -Path "C:\temp\log.txt" -Value "Conteúdo adicional"
    
  4. Get-ChildItem
    Exibe os arquivos e pastas em um diretório.

    Get-ChildItem -Path "C:\temp"
    
  5. Rename-Item
    Renomeia um arquivo ou pasta.

    Rename-Item -Path "C:\temp\oldname.txt" -NewName "newname.txt"
    
  6. Remove-Item
    Remove um arquivo ou pasta.

    Remove-Item -Path "C:\temp\file.txt"
    
  7. Copy-Item
    Copia um arquivo ou pasta.

    Copy-Item -Path "C:\temp\file.txt" -Destination "C:\temp\backup"
    
  8. Move-Item
    Move um arquivo ou pasta.

    Move-Item -Path "C:\temp\file.txt" -Destination "C:\temp\archive"
    
  9. Out-File
    Redireciona a saída para um arquivo.

    Get-Process | Out-File -FilePath "C:\temp\processes.txt"
    
  10. Select-String
    Pesquisa por uma string dentro de arquivos.

    Select-String -Path "C:\temp\log.txt" -Pattern "Erro"
    

Comandos Avançados

  1. Get-Help
    Obtém ajuda detalhada sobre um comando específico.

    Get-Help Get-Process
    
  2. Get-WmiObject
    Obtém informações do sistema usando WMI.

    Get-WmiObject -Class Win32_OperatingSystem
    
  3. New-Object
    Cria um novo objeto.

    $obj = New-Object System.IO.StreamReader("C:\temp\file.txt")
    
  4. Invoke-Command
    Executa comandos remotamente em outra máquina.

    Invoke-Command -ComputerName "RemotePC" -ScriptBlock { Get-Process }
    
  5. Start-Job
    Inicia uma tarefa em segundo plano.

    Start-Job -ScriptBlock { Get-Process }
    
  6. Get-Job
    Exibe os jobs em segundo plano.

    Get-Job
    
  7. Receive-Job
    Recebe a saída de um job.

    Receive-Job -Job (Get-Job -Id 1)
    
  8. Stop-Job
    Interrompe um job.

    Stop-Job -Job (Get-Job -Id 1)
    
  9. Export-Csv
    Exporta dados para um arquivo CSV.

    Get-Process | Export-Csv -Path "C:\temp\processes.csv" -NoTypeInformation
    
  10. Import-Csv
    Importa dados de um arquivo CSV.

    $data = Import-Csv -Path "C:\temp\processes.csv"
    
  11. ConvertTo-Json
    Converte objetos em formato JSON.

    $obj | ConvertTo-Json
    
  12. ConvertFrom-Json
    Converte JSON para objetos.

    $json = '{"name":"John","age":30}'
    $obj = $json | ConvertFrom-Json
    
  13. Test-Connection
    Testa a conectividade de rede (ping).

    Test-Connection -ComputerName "google.com"
    
  14. Get-ADUser
    Obtém informações sobre usuários no Active Directory.

    Get-ADUser -Filter *
    
  15. Set-ADUser
    Modifica informações sobre usuários no Active Directory.

    Set-ADUser -Identity "jdoe" -Department "HR"
    
  16. New-ADUser
    Cria um novo usuário no Active Directory.

    New-ADUser -Name "John Doe" -SamAccountName "jdoe"
    
  17. Remove-ADUser
    Remove um usuário do Active Directory.

    Remove-ADUser -Identity "jdoe"
    
  18. Get-ADComputer
    Obtém informações sobre computadores no Active Directory.

    Get-ADComputer -Filter *
    
  19. New-ADComputer
    Cria um novo computador no Active Directory.

    New-ADComputer -Name "Computer01" -SamAccountName "Computer01"
    
  20. Set-ItemProperty
    Modifica as propriedades de um item.

    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "MyApp" -Value "C:\Program Files\MyApp.exe"
    

Comandos de Automação e Scripts

  1. ForEach-Object
    Executa um script para cada item em um conjunto de dados.

    Get-Process | ForEach-Object { $_.Name }
    
  2. Where-Object
    Filtra objetos de acordo com uma condição.

    Get-Process | Where-Object { $_.CPU -gt 100 }
    
  3. If-Else
    Estrutura condicional.

    if ($value -eq "true") { Write-Host "True" } else { Write-Host "False" }
    
  4. Try-Catch
    Estrutura de tratamento de exceções.

    try {
        Get-Content "C:\temp\file.txt"
    } catch {
        Write-Host "Erro ao abrir o arquivo"
    }
    
  5. Switch
    Estrutura condicional múltipla.

    switch ($value) {
        "A" { Write-Host "Valor A" }
        "B" { Write-Host "Valor B" }
        default { Write-Host "Outro valor" }
    }
    
  6. While
    Estrutura de loop.

    $i = 0
    while ($i -lt 5) {
        Write-Host "Contagem: $i"
        $i++
    }
    
  7. For
    Loop com contador.

    for ($i = 0; $i -lt 5; $i++) {
        Write-Host "Contagem: $i"
    }
    
  8. Start-Sleep
    Pausa a execução do script por um tempo determinado.

    Start-Sleep -Seconds 5
    
  9. Read-Host
    Solicita entrada do usuário.

    $input = Read-Host "Digite seu nome"
    
  10. Write-Host
    Exibe informações na tela.

    Write-Host "Mensagem de exemplo"
    

Claro! Vamos continuar com mais comandos PowerShell, avançando para operações mais complexas e úteis.

Comandos Avançados (continuação)

  1. Invoke-WebRequest
    Envia uma solicitação HTTP para um site e retorna a resposta.

    $response = Invoke-WebRequest -Uri "https://www.example.com"
    
  2. Invoke-RestMethod
    Envia uma solicitação HTTP e retorna um objeto resultante.

    $data = Invoke-RestMethod -Uri "https://api.example.com/data"
    
  3. Get-Content -Tail
    Exibe as últimas linhas de um arquivo.

    Get-Content -Path "C:\temp\log.txt" -Tail 10
    
  4. Get-ItemProperty
    Obtém as propriedades de um item (exemplo: uma chave de registro).

    Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run"
    
  5. New-Item
    Cria um novo item (diretório ou arquivo).

    New-Item -Path "C:\temp\newfolder" -ItemType Directory
    
  6. Set-Item
    Define o valor de um item (exemplo: um arquivo ou diretório).

    Set-Item -Path "C:\temp\newfolder" -Value "Novo valor"
    
  7. Get-Help -Online
    Exibe a ajuda online para um comando específico.

    Get-Help Get-Process -Online
    
  8. Get-Command | Where-Object { $_.Name -like "Service" }
    Filtra os comandos que contêm a palavra "Service".

    Get-Command | Where-Object { $_.Name -like "*Service*" }
    
  9. Set-ItemProperty -Name "Value"
    Modifica o valor de uma chave de registro.

    Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "MyApp" -Value "C:\Program Files\MyApp.exe"
    
  10. Get-Process | Sort-Object CPU -Descending
    Exibe os processos ordenados pelo uso de CPU em ordem decrescente.

    Get-Process | Sort-Object CPU -Descending
    

Manipulação de Arquivos e Diretórios

  1. Get-Item
    Obtém as propriedades de um arquivo ou diretório.

    Get-Item -Path "C:\temp\file.txt"
    
  2. Test-Path
    Verifica se um caminho de arquivo ou diretório existe.

    Test-Path -Path "C:\temp\file.txt"
    
  3. Get-FileHash
    Obtém o hash de um arquivo, útil para verificar integridade.

    Get-FileHash -Path "C:\temp\file.txt"
    
  4. Compare-Object
    Compara dois conjuntos de objetos.

    Compare-Object (Get-Content "C:\file1.txt") (Get-Content "C:\file2.txt")
    
  5. Get-Help Get-Process | Select-String "process"
    Pesquisa um termo dentro da ajuda de um comando.

    Get-Help Get-Process | Select-String "process"
    
  6. Get-Content -Encoding UTF8
    Exibe o conteúdo de um arquivo com codificação UTF-8.

    Get-Content -Path "C:\temp\file.txt" -Encoding UTF8
    
  7. Get-Content -ReadCount 10
    Lê um arquivo em blocos de 10 linhas.

    Get-Content -Path "C:\temp\log.txt" -ReadCount 10
    
  8. Set-Item -Path "C:\temp\file.txt" -Value "Texto atualizado"
    Modifica o conteúdo de um arquivo.

    Set-Item -Path "C:\temp\file.txt" -Value "Texto atualizado"
    
  9. Get-Item "C:\temp\file.txt" | Select-Object Name, Length
    Exibe o nome e o tamanho do arquivo.

    Get-Item "C:\temp\file.txt" | Select-Object Name, Length
    
  10. Move-Item -Path "C:\temp\file.txt" -Destination "C:\backup"
    Move um arquivo para outro diretório.

    Move-Item -Path "C:\temp\file.txt" -Destination "C:\backup"
    

Manipulação de Usuários e Grupos (Active Directory)

  1. Get-ADGroup
    Obtém grupos do Active Directory.

    Get-ADGroup -Filter *
    
  2. Add-ADGroupMember
    Adiciona um usuário a um grupo no Active Directory.

    Add-ADGroupMember -Identity "GroupName" -Members "UserName"
    
  3. Remove-ADGroupMember
    Remove um usuário de um grupo no Active Directory.

    Remove-ADGroupMember -Identity "GroupName" -Members "UserName"
    
  4. Set-ADGroup
    Modifica um grupo no Active Directory.

    Set-ADGroup -Identity "GroupName" -Description "Novo grupo"
    
  5. Get-ADUser -Filter * | Select-Object Name, SamAccountName
    Exibe o nome e o SamAccountName de todos os usuários.

    Get-ADUser -Filter * | Select-Object Name, SamAccountName
    
  6. Set-ADUser -Identity "UserName" -Title "Novo Cargo"
    Altera o título de um usuário no Active Directory.

    Set-ADUser -Identity "UserName" -Title "Novo Cargo"
    
  7. New-ADGroup
    Cria um novo grupo no Active Directory.

    New-ADGroup -Name "NewGroup" -SamAccountName "NewGroup" -GroupCategory Security -GroupScope Global -Path "CN=Users,DC=example,DC=com"
    
  8. New-ADUser
    Cria um novo usuário no Active Directory.

    New-ADUser -Name "John Doe" -SamAccountName "jdoe" -UserPrincipalName "jdoe@example.com" -Path "CN=Users,DC=example,DC=com"
    
  9. Remove-ADUser
    Remove um usuário do Active Directory.

    Remove-ADUser -Identity "jdoe"
    
  10. Get-ADComputer -Filter * | Select-Object Name, OperatingSystem
    Exibe todos os computadores e seus sistemas operacionais no Active Directory.

    Get-ADComputer -Filter * | Select-Object Name, OperatingSystem
    

Administração Remota

  1. Enter-PSSession
    Inicia uma sessão remota do PowerShell em outro computador.

    Enter-PSSession -ComputerName "RemotePC"
    
  2. Exit-PSSession
    Sai de uma sessão remota do PowerShell.

    Exit-PSSession
    
  3. Enable-PSRemoting
    Habilita o PowerShell Remoting no computador.

    Enable-PSRemoting -Force
    
  4. Get-PSDrive
    Exibe todos os drives (dispositivos de armazenamento) disponíveis no PowerShell.

    Get-PSDrive
    
  5. Get-RemoteFile
    Obtém arquivos remotamente de uma máquina.

    Get-RemoteFile -ComputerName "RemotePC" -FilePath "C:\remote\file.txt"
    

Funções e Scripts

  1. Function MyFunction { }
    Define uma função personalizada no PowerShell.

    Function MyFunction {
        Write-Host "Função executada!"
    }
    
  2. Export-ModuleMember
    Exporta membros de um módulo PowerShell.

    Export-ModuleMember -Function MyFunction
    
  3. New-Module
    Cria um novo módulo no PowerShell.

    New-Module -Name "MyModule" -ScriptBlock { Write-Host "Meu Módulo" }
    
  4. Invoke-Expression
    Executa um comando ou script armazenado em uma string.

    $command = "Get-Process"
    Invoke-Expression $command
    
  5. Test-Connection -ComputerName "RemotePC" -Count 4
    Testa a conectividade de rede para um computador remoto.

    Test-Connection -ComputerName "RemotePC" -Count 4
    

Outros Comandos Avançados

  1. Get-WmiObject -Class Win32_BIOS
    Obtém informações sobre o BIOS do computador.

    Get-WmiObject -Class Win32_BIOS
    
  2. Get-Help about_Commands
    Exibe informações sobre os comandos no PowerShell.

    Get-Help about_Commands
    
  3. Get-Date
    Obtém a data e hora atuais.

    Get-Date
    
  4. Set-Date
    Define a data e hora do sistema.

    Set-Date -Date "2025-04-16 10:00"
    
  5. Get-Content -Path "log.txt" | Select-String "Error"
    Pesquisa erros em um arquivo de log.

    Get-Content -Path "log.txt" | Select-String "Error"
    
  6. Get-Help Set-ExecutionPolicy
    Exibe detalhes sobre o comando Set-ExecutionPolicy.

    Get-Help Set-ExecutionPolicy
    
  7. Test-Path "C:\temp"
    Verifica se um diretório ou arquivo existe.

    Test-Path "C:\temp"
    
  8. Get-Command -Module Microsoft.PowerShell.Management
    Exibe comandos de um módulo específico.

    Get-Command -Module Microsoft.PowerShell.Management
    
  9. Start-Process
    Inicia um novo processo no sistema.

    Start-Process "notepad.exe"
    
  10. Get-Process | Export-Clixml -Path "C:\temp\processes.xml"
    Exporta os processos para um arquivo XML. powershell Get-Process | Export-Clixml -Path "C:\temp\processes.xml"

Esses comandos cobrem uma ampla gama de funcionalidades no PowerShell, desde operações básicas de gerenciamento de arquivos até automação avançada e administração remota. Se precisar de mais detalhes sobre algum comando específico, estou à disposição!


Postar um comentário

0 Comentários