# =============================== # MANUTENÇÃO LINEAR - ORQUESTRADOR # =============================== chcp 850 | Out-Null # Verifica administrador if (-not ([Security.Principal.WindowsPrincipal] ` [Security.Principal.WindowsIdentity]::GetCurrent() ).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { Write-Host "Execute o PowerShell como ADMINISTRADOR." -ForegroundColor Red Pause exit } $log = "$env:TEMP\manutencao_linear_$(Get-Date -Format 'yyyyMMdd_HHmmss').log" function Log($msg) { $msg | Tee-Object -FilePath $log -Append } function Menu { Clear-Host Write-Host "======================================" -ForegroundColor Cyan Write-Host " MENU SUPORTE TÉCNICO" Write-Host " Feito por: LINEAR - Soluções em T.I" Write-Host "======================================" -ForegroundColor Cyan Write-Host "" Write-Host "1 - Informações do Sistema" Write-Host "2 - Reparar Arquivos do Sistema (SFC)" Write-Host "3 - Desligamento imediato do Windows" Write-Host "4 - Verificar e Reparar Disco C: (CHKDSK /r /f /x)" Write-Host "5 - Diagnóstico de Memória" Write-Host "6 - Restauração do Sistema" Write-Host "7 - Conectividade de Rede" Write-Host "8 - Gerenciador de Tarefas" Write-Host "9 - Editor do Registro (Regedit)" Write-Host "10 - Verificar Atualizações do Windows" Write-Host "11 - Limpar Arquivos Temporários" Write-Host "12 - Limpar Cache DNS (Flush DNS)" Write-Host "13 - Reinicializar Serviços de Rede" Write-Host "14 - Desfragmentador de Disco" Write-Host "15 - Gerenciar Usuários Locais" Write-Host "16 - Verificar Integridade do Sistema (DISM)" Write-Host "17 - Ativar/Desativar Firewall do Windows" Write-Host "18 - Teste de Velocidade de Disco" Write-Host "19 - Criar Ponto de Restauração" Write-Host "20 - Abrir CMD" Write-Host "21 - Atualizar Programas (Winget)" Write-Host "22 - Domínio / Relação de Confiança (AD)" Write-Host "23 - Análise TCP/IP (Netstat)" Write-Host "24 - Visualizador de Eventos" Write-Host "25 - Start/Stop Spooler de Impressão" Write-Host "26 - Gerenciador de Serviços" Write-Host "27 - Sair" Write-Host "============================================" } do { Menu $op = Read-Host "Escolha a opção" switch ($op) { 1 { systeminfo | Tee-Object $log -Append; Pause } 2 { Write-Host "Iniciando SFC. Isso pode demorar alguns minutos..." Start-Sleep -Seconds 2 Start-Process sfc -ArgumentList "/scannow" -NoNewWindow -Wait Pause } 3 { shutdown /s /t 0 } 4 { Write-Host "CHKDSK será agendado no próximo reboot." chkdsk C: /r /f /x Pause } 5 { mdsched.exe } 6 { rstrui.exe } 7 { ipconfig /all ping 8.8.8.8 Pause } 8 { taskmgr } 9 { regedit } 10 { control update } 11 { Get-ChildItem "$env:TEMP" -Recurse -Force | Remove-Item -Force -Recurse -ErrorAction SilentlyContinue Write-Host "Temporários limpos." Pause } 12 { ipconfig /flushdns Pause } 13 { netsh int ip reset netsh winsock reset Pause } 14 { dfrgui } 15 { lusrmgr.msc } 16 { DISM /Online /Cleanup-Image /RestoreHealth | Tee-Object $log -Append; Pause } 17 { $fw = Read-Host "1- Ativar | 2- Desativar" if ($fw -eq 1) { netsh advfirewall set allprofiles state on } if ($fw -eq 2) { netsh advfirewall set allprofiles state off } Pause } 18 { winsat disk Pause } 19 { Checkpoint-Computer -Description "Ponto Linear TI" -RestorePointType MODIFY_SETTINGS Write-Host "Ponto criado." Pause } 20 { cmd } 21 { winget upgrade --all Pause } 22 { sysdm.cpl } 23 { netstat -ano Pause } 24 { eventvwr } 25 { $sp = Read-Host "1- Start | 2- Stop" if ($sp -eq 1) { Start-Service spooler } if ($sp -eq 2) { Stop-Service spooler } Pause } 26 { services.msc } 27 { exit } default { Write-Host "Opção inválida"; Pause } } } while ($true)