Este repositório oferece uma coleção prática e organizada de comandos PowerShell úteis para o gerenciamento de arquivos, diretórios, configurações de rede e administração do sistema. Ideal para administradores de sistemas, desenvolvedores e qualquer pessoa que queira aprimorar sua produtividade com PowerShell.
Explore comandos essenciais como listar, criar, copiar e remover arquivos e pastas. Além disso, aprenda a buscar arquivos e navegar entre diretórios facilmente.
Aprofunde-se em comandos mais avançados, como gerenciamento de processos, testes de conexão de rede, configuração de IP estático, e comandos para configurar e gerenciar VPNs.
Descubra truques úteis, como a utilização de variáveis, redirecionamento de saída para arquivos, e a execução de scripts no PowerShell.
Para listar os arquivos e diretórios no diretório atual:
lsOu com uma visualização mais detalhada:
Get-ChildItemPara criar um novo diretório:
New-Item -ItemType Directory -Name "nome_do_diretorio"Ou a versão curta:
mkdir nome_do_diretorio- Para remover um diretório vazio:
Remove-Item nome_do_diretorio- Para remover um diretório não vazio:
Remove-Item nome_do_diretorio -RecursePara criar um novo arquivo e adicionar conteúdo a ele:
"Conteúdo do arquivo" | Out-File "nome_do_arquivo.txt"- Para copiar um arquivo:
Copy-Item "origem" "destino"- Para copiar um diretório recursivamente:
Copy-Item "origem" "destino" -Recurse- Para mover um arquivo para outro diretório:
Move-Item "origem" "destino"- Para renomear um arquivo:
Rename-Item "arquivo_antigo" "novo_nome"Para excluir um arquivo:
Remove-Item "nome_do_arquivo"Adicione a opção -Force para forçar a exclusão de arquivos protegidos.
Para buscar arquivos dentro do diretório atual e subdiretórios:
Get-ChildItem -Recurse -Filter "nome_do_arquivo.extensao"Ou se você quiser buscar por nome com um padrão:
Get-ChildItem -Recurse | Where-Object { $_.Name -like "*parte_do_nome*" }Para verificar o uso do disco em sua máquina:
Get-PSDrivePara navegar entre diretórios:
Set-Location "caminho_do_diretorio"Ou apenas:
cd "caminho_do_diretorio"Para listar os processos em execução no seu sistema:
Get-ProcessPara parar um processo pelo nome:
Stop-Process -Name "nome_do_processo"Ou para parar um processo pelo ID:
Stop-Process -Id 1234Para obter detalhes sobre o sistema, como versão do Windows:
Get-ComputerInfoOu para verificar a versão do PowerShell:
$PSVersionTable.PSVersionPara comprimir um arquivo ou diretório em um arquivo ZIP:
Compress-Archive -Path "caminho_do_arquivo" -DestinationPath "arquivo_comprimido.zip"Para extrair arquivos de um arquivo ZIP:
Expand-Archive -Path "arquivo_comprimido.zip" -DestinationPath "diretorio_destino"Para exibir as configurações de rede, como endereço IP, máscara de sub-rede, gateway e servidores DNS:
Get-NetIPAddressOu para uma visualização mais explicativa:
ipconfig- Para liberar o IP atual (equivalente ao
ipconfig /release):
Release-DhcpLease -InterfaceAlias "Ethernet"- Para renovar o IP (equivalente ao
ipconfig /renew):
Renew-DhcpLease -InterfaceAlias "Ethernet"Para definir um endereço IP estático para um adaptador de rede:
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress "192.168.1.100" -PrefixLength 24 -DefaultGateway "192.168.1.1"Para configurar servidores DNS específicos para um adaptador de rede:
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses ("8.8.8.8", "8.8.4.4")Para testar a conectividade com um host, como o Google:
Test-Connection "www.google.com"Ou para fazer um ping para um endereço IP específico:
Test-Connection 192.168.1.1Para rastrear o caminho de pacotes até um host (semelhante ao tracert):
Test-NetConnection -Traceroute -RemoteAddress "www.google.com"Ou para rastrear até um endereço IP:
Test-NetConnection -Traceroute -RemoteAddress 8.8.8.8Para exibir as conexões de rede ativas e as portas de escuta no sistema:
Get-NetTCPConnectionPara verificar as regras de firewall e o status das conexões:
Get-NetFirewallRulePara verificar o status do firewall do Windows:
Get-NetFirewallProfilePara exibir a tabela de roteamento:
Get-NetRoutePara listar as conexões VPN no sistema:
Get-VpnConnectionPara adicionar uma nova conexão VPN:
Add-VpnConnection -Name "MinhaVPN" -ServerAddress "vpn.servidor.com" -TunnelType L2tp -EncryptionLevel Required -AuthenticationMethod MSCHAPv2 -AllUserConnection- Para visualizar as redes Wi-Fi disponíveis:
netsh wlan show networks- Para conectar-se a uma rede Wi-Fi específica:
Connect-NetWiFi -Name "Nome_da_Rede" -Password "Senha_da_Rede"- Para exibir informações detalhadas sobre um adaptador de rede:
Get-NetAdapter -Name "Ethernet"- Para exibir informações sobre todos os adaptadores de rede:
Get-NetAdapterPara testar a conexão com uma porta específica:
Test-NetConnection -ComputerName "www.google.com" -Port 80Ou testar a conexão com uma porta personalizada, por exemplo, 443 (HTTPS):
Test-NetConnection -ComputerName "www.google.com" -Port 443Para bloquear uma conexão de rede através do firewall do Windows:
New-NetFirewallRule -DisplayName "Bloqueio Conexão" -Direction Inbound -Action Block -Protocol TCP -LocalPort 8080Para desbloquear uma conexão:
Remove-NetFirewallRule -DisplayName "Bloqueio Conexão"Para exibir detalhes de uma conexão VPN ativa:
Get-VpnConnectionPara desconectar uma VPN:
Remove-VpnConnection -Name "MinhaVPN" -Force-
Usando Variáveis no PowerShell:
Para criar uma variável e atribuir valor:
$nome_da_variavel = "valor"
-
Redirecionando Saída para Arquivo 📄
Para salvar a saída de um comando em um arquivo de texto:
comando | Out-File "arquivo.txt"
-
Executando Script no PowerShell ⌨️
Para rodar um script
.ps1:.\script.ps1
Se você tiver problemas de segurança, pode alterar a política de execução:
Set-ExecutionPolicy RemoteSigned
📝 Feito com amor por Bruno Hoinacki!