Olá pessoal, tudo bem? Espero que sim!
No último post, aprendemos quais são as versões disponíveis do Powershell e em quais plataformas ele está disponível. Hoje vamos abordar os principais verbos utilizados para indicar as ações que os cmdlets ou funções irão executar.
Um cmdlet padrão do Powershell comumente utiliza a estrutura de nomenclatura “verbo-substantivo” que basicamente indica uma Ação para um Recurso ou Objeto em evidência, como por exemplo, Get-Command, ou seja, no português claro, Obter (Verbo) Comando (Substantivo Masculino).
Agora que você já sabe como funciona a nomenclatura dos cmdlets, vamos conhecer os principais verbos utilizados no Powershell:
Verbos Comuns
Verbos | Descrição |
Add | Adiciona ou anexa um valor ou item a um recurso ou objeto. |
Exemplo:
1 2 3 |
# Adiciona um conteúdo a um arquivo. Add-Content -Value "Hello World" -Path C:\Users\RobotChicken\Desktop\printf.txt |
Clear | Limpa um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Limpa o conteúdo de um arquivo. Clear-Content -Path C:\Users\RobotChicken\Desktop\printf.txt |
Close | Altera o estado de um recurso, item ou objeto para Encerrado. |
Exemplo:
1 2 3 |
# Fecha a sessão de um usuário que está conectado a um compartilhamento. Close-SmbSession -ClientUserName DSK\RobotChicken |
Copy | Copia um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Copia um arquivo para uma pasta. Copy-Item -Path C:\Users\RobotChicken\Desktop\printf1.txt -Destination C:\Users\RobotChicken\Desktop\Hello |
Enter | Entra em um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Entra ou inicia uma sessão interativa em um computador remoto para gerenciamento por Powershell. Enter-PSSession -ComputerName "DISCOVERY" |
Exit | Sai de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Sai de uma sessão interativa a um computador remoto Exit-PSSession |
Find | Procura em um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Procura os comandos disponíveis do módulo do Azure Active Directory direto do repositório publico de scripts NuGet. Find-Command -ModuleName "AzureAD" |
Format | Formata objetos ou saídas em determinados layouts. |
Exemplo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# Importa um CSV para uma variável como tabela e Formata a exibição agrupado pela coluna COMPUTER. PS C:\Users\RobotChicken> $printf = Import-Csv -Path C:\Users\Daiana\Desktop\printf.csv -Delimiter ";" PS C:\Users\RobotChicken> $printf | Format-Table -GroupBy COMPUTER COMPUTER: Computer1 COMPUTER OUTPUT -------- ------ Computer1 Hello World 1 Computer1 Hello World Again 1 COMPUTER: Computer2 COMPUTER OUTPUT -------- ------ Computer2 Hello World 2 Computer2 Hello World Again 2 |
Get | Obtém informações de um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 9 |
# Recupera as propriedades de um arquivo. PS C:\Users\RobotChicken> Get-Item -Path C:\Users\RobotChicken\Desktop\printf.csv Diretório: C:\Users\RobotChicken\Desktop Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 04/06/2019 21:09 129 printf.csv |
Join | Junta um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 |
# Junta dois caminhos. PS C:\Users\RobotChicken> Join-Path -Path C:\Users -ChildPath \RobotChicken\Desktop C:\Users\RobotChicken\Desktop |
Move | Move um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Move um arquivo para outro diretório. Move-Item -Path C:\Users\RobotChicken\Desktop\printf.csv -Destination C:\Users\RobotChicken\Desktop\Destino |
New | Cria um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 9 |
# Cria um arquivo na área de trabalho. PS C:\Users\RobotChicken> New-Item -Path C:\Users\RobotChicken\Desktop -Name "printf-novo.csv" Diretório: C:\Users\RobotChicken\Desktop Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 04/06/2019 22:04 0 printf-novo.csv |
Push | Impulsiona o estado de um recurso, objeto ou item. |
Exemplo:
1 2 3 4 |
# Salta o diretório atual para a raiz da partição. PS C:\Users\RobotChicken> Push-Location C:\ PS C:\> |
Remove | Remove um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Remove um arquivo. Remove-Item -Path C:\Users\RobotChicken\Desktop\printf.txt |
Rename | Renomeia um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Renomeia o nome de um arquivo. Rename-Item -Path C:\Users\RobotChicken\Desktop\printf1.zip -NewName printf2.zip |
Select | Seleciona um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 9 10 |
# Importa um CSV e seleciona uma coluna. PS C:\Users\RobotChicken> Import-Csv -Path C:\Users\RobotChicken\Desktop\printf.csv -Delimiter ";" | Select-Object COMPUTER COMPUTER -------- Computer1 Computer1 Computer2 Computer2 |
Set | Realiza definições em um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Define a descrição do usuário local Guest como "Usuário convidado". Set-LocalUser -Name Guest -Description "Usuário convidado" |
Show | Exibe informações de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Exibe os comandos disponíveis no Powershell. Show-Command |
Verbos de Comunicação
Connect | Realiza conexão a um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Realiza uma conexão aos serviços em nuvem da Microsoft. Requer o módulo do Microsoft Online Services instalado. Connect-MsolService |
Read | Lê um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 |
# Lê o conteúdo digitado no host. Pode ser combinado com uma variável para armazenar a informação digitada. PS C:\Users\RobotChicken> Read-Host "Onde você mora" Onde você mora: São Paulo São Paulo |
Send | Envia um recurso, objeto ou item. |
Exemplo:
1 2 |
# Envia um e-mail usando um servidor smtp. Send-MailMessage -From 'John Doe <john@raphaelgomes.net>' -To 'Jane Doe <jane@raphaelgomes.net>' -Subject 'E-mail de Teste' -SmtpServer smtp.raphaelgomes.net |
Write | Escreve um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Escreve na saída da console "Hello World" na cor verde. Write-Host -ForegroundColor Green "Hello World" |
Verbos de Dados
Compare | Compara um recurso, objeto, item ou valor. |
Exemplo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# Compara dois conteúdos em objetos incorporados ao comando utilizando o cmdlet Get-Content. Aponta a diferença entre os objetos usando o SideIndicator. PS C:\Users\RobotChicken> Get-Content C:\Users\RobotChicken\Desktop\printf1.txt Hello World OK Hello World PS C:\Users\RobotChicken> Get-Content C:\Users\RobotChicken\Desktop\printf2.txt Hello World OK Hello World Again PS C:\Users\RobotChicken> Compare-Object -ReferenceObject (Get-Content C:\Users\RobotChicken\Desktop\printf1.txt) -DifferenceObject (Get-Content C:\Users\RobotChicken\Desktop\printf2.txt) InputObject SideIndicator ----------- ------------- Hello World Again => Hello World <= |
Expand | Extrai um conteúdo de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Extrai o conteúdo de um arquivo .ZIP para a área de trabalho. Expand-Archive -Path C:\Users\RobotChicken\Desktop\printf.zip -DestinationPath C:\Users\RobotChicken\Desktop |
Export | Exporta os dados de um recurso, objeto ou item. |
Exemplo:
1 2 3 4 |
# Exporta o conteúdo de um objeto armazenado em uma variável em CSV ocultando o tipo de objeto. $printf = [pscustomobject]@{PRINTF="Hello World"} $printf | Export-Csv -Path C:\Users\RobotChicken\Desktop\printf.csv -NoTypeInformation |
Group | Agrupa um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 9 10 |
# Consulta os arquivos de um diretório e os Agrupa por tipo de extensão. PS C:\Users\RobotChicken> $arquivos = Get-ChildItem -Path C:\Users\RobotChicken\Desktop PS C:\Users\RobotChicken> $arquivos | Group-Object -Property Extension Count Name Group ----- ---- ----- 1 .csv {printf.csv} 3 .txt {printf1.txt, printf2.txt} 1 .zip {printf1.zip} |
Import | Importa um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 9 10 |
# Importa um CSV delimitado por ";" como uma tabela. PS C:\Users\RobotChicken> Import-Csv -Path C:\Users\RobotChicken\Desktop\printf.csv -Delimiter ";" COMPUTER OUTPUT -------- ------ Computer1 Hello World 1 Computer1 Hello World Again 1 Computer2 Hello World 2 Computer2 Hello World Again 2 |
Initialize | Ativa ou Inicia um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Ativa o chip TPM do computador. Initialize-Tpm |
Mount | Monta um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Monta uma imagem do sistema operacional Windows. Mount-DiskImage -ImagePath C:\Users\RobotChicken\Desktop\WindowsImage.iso |
Out | Cria saídas para um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Cria a saída de um conteúdo para um arquivo. "Hello World" | Out-File -FilePath C:\Users\RobotChicken\Desktop\printf.txt |
Publish | Publica um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Publica um script em um repositório local de scripts Powershell. Publish-Script -Path C:\Users\RobotChicken\Desktop\script.ps1 -Repository LocalPsRepo |
Save | Salva um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Salva um script em um repositório local de scripts. Save-Script -Name ScriptNovo -Repository LocalPSRepo -Path C:\Users\RobotChicken\Desktop |
Unpublish | Cancela a publicação de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Cancela (deleta) a publicação de um pacote de App-V em um computador. Unpublish-AppvClientPackage -Name "V-App-Homologação" -Version 5 |
Update | Atualiza um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Atualiza as informações armazenadas em cache do primeiro disco configurado no computador. Update-Disk -Number 0 |
Verbos de Diagnóstico
Debug | Depura um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Depura processos em execução. Debug-Process -Name "explorer" |
Measure | Mede ou Analisa um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 |
# Importa o conteúdo de um arquivo e analisa a quantidade de linhas, palavras e caracteres. PS C:\Users\RobotChicken> $printf = Get-Content C:\Users\RobotChicken\Desktop\printf1.txt PS C:\Users\RobotChicken> $printf | Measure-Object -Word -Line -Character Lines Words Characters Property ----- ----- ---------- -------- 2 5 25 |
Repair | Repara um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Em caso de utilização de redundância de disco, repara a integridade de um arquivo. Repair-FileIntegrity -FileName C:\Users\RobotChicken\Desktop\printf2.zip |
Resolve | Realiza uma decisão sobre um recurso, objeto ou item. |
Exemplo:
1 2 3 4 |
# Verifica se um diretório existe. PS C:\Users\RobotChicken> Resolve-Path C:\Teste Resolve-Path : Não é possível localizar o caminho 'C:\Teste' porque ele não existe. |
Test | Testa um recurso, objeto ou item. |
Exemplo:
1 2 3 4 |
# Testa a existência de um diretório local. Retorna verdadeiro ou falso. PS C:\Users\RobotChicken> Test-Path C:\Users\RobotChicken\Desktop\TestPath True |
Verbos de Ciclo de Vida
Complete | Conclui um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Processa os comandos executados após iniciar uma transação. Complementa o cmdlet Start-Transaction que inicia uma instância de transação para processar diversos comandos que forem declarados em seguida. Os comandos da transação são processados apenas quando o cmdlet Complete-Transaction é executado. Complete-Transaction |
Disable | Desabilita um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Desabilita uma interface de rede. Disable-NetAdapter -Name "Ethernet" |
Enable | Habilita um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Habilita uma interface de rede. Enable-NetAdapter -Name "Ethernet" |
Install | Instala um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Instala o módulo do Azure Active Directory no repositório local do Powershell. Install-Module -Name "AzureAD" |
Invoke | Impetra uma instância de um recurso, objeto, item local ou remoto. |
Exemplo:
1 2 3 |
# Abre uma instância de um arquivo. Invoke-Item -Path C:\Users\RobotChicken\Desktop\printf.csv |
Register | Registra um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Registra um repositório local de scripts Powershell. Register-PSRepository -Name LocalPSRepo -SourceLocation '\\DSK\LocalPSRepo\' -ScriptSourceLocation '\\DSK\LocalPSRepo\' -InstallationPolicy Trusted |
Restart | Reinicia um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Reinicia serviços do Windows. Restart-Service WinRM |
Resume | Continua um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Continua um serviço em estado de pausa. Resume-Service stisvc |
Start | Inicia a execução de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Inicia um serviço do Windows. Start-Service -Name ALG |
Stop | Para a execução de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Para um serviço do Windows. Stop-Service -Name BITS |
Suspend | Suspende a execução de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
Suspende (pausa) a execução de um serviço do Windows. Suspend-Service -Name stisvc |
Uninstall | Desinstala um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Desinstala o módulo do Azure Active Directory para Powershell. Uninstall-Module -Name AzureAD |
Unregister | Cancela o registro de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Cancela (deleta) a tarefa agendada de verificação de atualização do Google Chrome. Unregister-ScheduledTask -TaskName "GoogleUpdateTaskMachineCore" |
Wait | Aguarda a execução de um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Aguarda até o término da execução do processo Excel. Wait-Process -Name excel |
Verbos de Segurança
Block | Bloqueia um recurso, objeto ou item. |
Exemplo:
1 2 3 4 5 6 7 8 |
# Bloqueia o acesso de um usuário a um compartilhamento. PS C:\Users\RobotChicken> Block-SmbShareAccess -Name "Hello World" -AccountName DSK\RobotChicken Name ScopeName AccountName AccessControlType AccessRight ---- --------- ----------- ----------------- ----------- Hello World * DSK\RobotChicken Deny Full Hello World * Todos Allow Read |
Unblock | Desbloqueia um recurso, objeto ou item. |
Exemplo:
1 2 3 |
# Desbloqueia um arquivo baixado na internet ou advindos de locais inseguros. Unblock-File -Path C:\Users\RobotChicken\Downloads\ArquivoBaixadoNaInternet.exe |
Para conhecer todos os cmdlets disponíveis em seu shell, basta utilizar o cmdlet Get-Command. Agora para saber o que um cmdlet ou função faz, basta adicionar -? ao final da linha.
Exemplo:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
PS C:\Users\RobotChicken> Get-Command -? NOME Get-Command SINTAXE Get-Command [[-ArgumentList] <Object[]>] [<CommonParameters>] Get-Command [[-Name] <string[]>] [[-ArgumentList] <Object[]>] [<CommonParameters>] ALIASES gcm COMENTÁRIOS Get-Help não consegue localizar os arquivos de Ajuda para o cmdlet neste computador. Apenas a ajuda parcial está sendo exibida. -- Para baixar e instalar arquivos de Ajuda para o módulo que inclui esse cmdlet, use Update-Help. -- Para visualizar o tópico de Ajuda desse cmdlet online, digite: "Get-Help Get-Command -Online" ou acesse https://go.microsoft.com/fwlink/?LinkID=113309. |
Obs: Deixei uma pegadinha neste post, encontrou? No próximo falaremos dela. Edit: Você pode conferir aqui!
É isso aí galera, por hoje é só. Até o próximo post!
Dúvidas, sugestões, críticas? Entre em contato aqui!
Gostou? Deixe seu comentário e não se esqueçam de curtir a página do Facebook na barra lateral!