Para los administradores de sistemas y técnicos de soporte, PowerShell es la herramienta definitiva para automatizar tareas, diagnosticar fallos complejos y solucionar problemas en equipos con Windows de forma rápida y sin necesidad de navegar por menús gráficos interminables.
A continuación, se detalla un compendio completo y detallado de 20 comandos clave agrupados por categorías operativas, incluyendo el código exacto y el método de verificación para cada acción.
Diagnóstico y reparación del sistema de archivos y operativo
1. Reparar la imagen del sistema con DISM
Corrige daños graves en los archivos del sistema operativo utilizando Windows Update como fuente de reparación en segundo plano.
PowerShell
Repair-WindowsImage -Online -RestoreHealth
Verificación: El mensaje final en la consola debe indicar que la operación se completó con éxito (The restore operation completed successfully).
2. Escanear y reparar archivos de sistema dañados (SFC)
Busca y reemplaza archivos del sistema corrompidos utilizando la base de datos protegida de Windows.
PowerShell
sfc /scannow
Verificación: Al finalizar, el informe debe indicar que encontró y reparó archivos dañados o que no hay violaciones de integridad.
3. Comprobar la salud del disco duro principal (S.M.A.R.T.)
Verifica el estado físico, la salud operativa y el rendimiento de las unidades de almacenamiento conectadas.
PowerShell
Get-PhysicalDisk | Select-Object FriendlyName, OperationalStatus, HealthStatus
Verificación: El estado de salud (
HealthStatus) debe mostrarse comoHealthy.
4. Mostrar la fecha de instalación original de Windows
Permite conocer con exactitud la antigüedad del sistema operativo instalado en el equipo.
PowerShell
(Get-CimInstance Win32_OperatingSystem).InstallDate
Verificación: La consola devolverá la marca de tiempo exacta del despliegue inicial del sistema.
Redes, conectividad y resolución de problemas web
5. Liberar y renovar la dirección IP
Soluciona conflictos de asignación de IP en redes locales y errores de conectividad temporal.
PowerShell
ipconfig /release; ipconfig /renew
Verificación: Ejecuta
ipconfigpara verificar que la interfaz de red tiene una dirección IP válida asignada correctamente.
6. Vaciar la caché del servidor DNS
Resuelve problemas de navegación web cuando los sitios no cargan o devuelven errores de resolución de nombres.
PowerShell
Clear-DnsClientCache
Verificación: Ejecuta
ipconfig /displaydnsy comprueba que la lista aparezca vacía o limpia de registros previos.
7. Forzar la actualización de la Directiva de Grupo (Group Policy)
Útil cuando los cambios de políticas de red, seguridad o dominio no se aplican de inmediato en la estación de trabajo.
PowerShell
gpupdate /force
Verificación: Revisa la salida en consola para confirmar que la actualización de equipo y de usuario se completó correctamente.
8. Mostrar la lista de todas las redes Wi-Fi guardadas
Permite auditar los perfiles de red inalámbrica almacenados históricamente en el equipo.
PowerShell
netsh wlan show profiles
Verificación: Se mostrará en pantalla la lista completa de perfiles de red inalámbrica registrados.
9. Mostrar la contraseña de una red Wi-Fi guardada específica
Recupera en texto plano la clave de seguridad de una red inalámbrica a la que el equipo ya se ha conectado anteriormente.
PowerShell
netsh wlan show profile name="NombreDeLaRed" key=clear
Verificación: Revisa el campo Clave de seguridad (Key Content) en el resultado obtenido en pantalla.
10. Ver las conexiones de red activas y puertos en escucha
Ayuda a detectar software malicioso, conexiones externas no autorizadas o conflictos de puertos locales.
PowerShell
Get-NetTCPConnection | Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State
Verificación: Analiza la tabla de conexiones devuelta para verificar los estados activos (
Established,Listen).
Gestión de procesos, servicios y rendimiento
11. Reiniciar el servicio de audio
Si el sonido del equipo deja de funcionar repentinamente, este comando reinicia el servicio encargado de la pila de audio.
PowerShell
Restart-Service Audiosrv -Force
Verificación: Ejecuta
Get-Service Audiosrvy comprueba que el estado devuelto seaRunning.
12. Listar procesos que más memoria RAM consumen
Ayuda a identificar rápidamente fugas de memoria (memory leaks) o aplicaciones congeladas que saturan el sistema.
PowerShell
Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 10 Name, Id, @{Name="RAM (MB)";Expression={"{0:N2}" -f ($_.WorkingSet / 1MB)}}
Verificación: Revisa la lista ordenada en pantalla para detectar el proceso anómalo que consume más recursos.
13. Terminar un proceso por su nombre de forma forzosa
Cierra de inmediato aplicaciones bloqueadas que no responden a los comandos de cierre habituales.
PowerShell
Stop-Process -Name "nombre_del_proceso" -Force
Verificación: Ejecuta
Get-Process | Where-Object Name -eq "nombre_del_proceso"para confirmar que ya no aparece en ejecución.
14. Comprobar el estado de los servicios críticos de Windows
Monitorea servicios esenciales para la seguridad y el mantenimiento, como el Firewall o Windows Update.
PowerShell
Get-Service -Name MpsSvc, wuauserv, BITS | Select-Object Name, Status
Verificación: El estado (
Status) de los servicios consultados debe figurar comoRunning.
15. Reiniciar el Explorador de Windows
Soluciona bloqueos visuales en la barra de tareas, iconos del escritorio o el menú de inicio sin necesidad de reiniciar toda la PC.
PowerShell
Stop-Process -Name explorer -Force
Verificación: La barra de tareas y el escritorio desaparecerán brevemente por un segundo y se recargarán de forma automática.
Seguridad, hardware y mantenimiento general
16. Deshabilitar temporalmente el Firewall de Windows para pruebas
Útil para descartar bloqueos de puertos o reglas restrictivas en la red local durante diagnósticos de conectividad.
PowerShell
Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled False
Verificación: Ejecuta
Get-NetFirewallProfiley comprueba que el estado de habilitación (Enabled) seaFalse.
17. Volver a habilitar el Firewall de Windows
Restaura de inmediato la seguridad perimetral del sistema tras finalizar las pruebas de red.
PowerShell
Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled True
Verificación: Ejecuta
Get-NetFirewallProfiley confirma que el estado devuelto seaTrue.
18. Listar controladores de dispositivos que presentan fallas
Identifica componentes de hardware que tienen problemas de drivers o conflictos de recursos en el sistema.
PowerShell
Get-WmiObject Win32_PnPEntity | Where-Object { $_.ConfigManagerErrorCode -ne 0 } | Select-Object Name, DeviceID, ConfigManagerErrorCode
Verificación: Si la lista devuelta está vacía, significa que no hay dispositivos con errores críticos de controlador.
19. Exportar un informe completo de energía y batería (Laptops)
Genera un archivo HTML detallado sobre el desgaste real de la batería, ciclos de carga y el consumo energético histórico.
PowerShell
powercfg /batteryreport /output "C:\temp\battery-report.html"
Verificación: Abre la ruta especificada en el explorador de archivos para comprobar que el archivo HTML se generó correctamente.
20. Buscar y eliminar archivos temporales del sistema
Libera espacio de almacenamiento eliminando la basura acumulada por el sistema operativo y aplicaciones de usuario.
PowerShell
Remove-Item -Path "$env:TEMP\*" -Recurse -Force -ErrorAction SilentlyContinue
Verificación: Revisa la carpeta temporal del usuario para confirmar que se vació parcialmente o por completo.
