En sistemas Windows, es común encontrarse con el error:
'powershell' no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.
Este mensaje indica que el sistema no puede encontrar el ejecutable powershell.exe
, a pesar de que PowerShell esté instalado. Este artículo explica las causas comunes y cómo solucionarlo de forma permanente.
Causas comunes
- PowerShell no está instalado (raro en Windows modernos).
- El archivo
powershell.exe
existe, pero no está incluido en la variable de entornoPATH
. - El
PATH
tiene errores de formato que interrumpen su interpretación. - El entorno está restringido por políticas de seguridad, antivirus o entorno gestionado.
Paso 1: Verificar si PowerShell está instalado
Desde una ventana de CMD (símbolo del sistema), ejecuta:
dir C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
- Si el archivo existe, PowerShell está instalado correctamente.
- Si no existe, puedes instalar PowerShell Core desde:
https://github.com/PowerShell/PowerShell/releases
Paso 2: Comprobar la variable de entorno PATH
Ejecuta:
echo %PATH%
Revisa que la ruta donde está powershell.exe
esté incluida. La ruta estándar es:
C:\Windows\System32\WindowsPowerShell\v1.0\
Ejemplo de PATH
válido:
C:\Program Files\MiApp\bin;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\
Errores comunes en el PATH
:
- Espacios antes o después del punto y coma (
;
)C:\MiRuta ;C:\OtraRuta
→ IncorrectoC:\MiRuta;C:\OtraRuta
→ Correcto
- Caracteres especiales sin escapar
- Rutas no existentes o mal formateadas
Paso 3: Corregir o añadir PowerShell al PATH
Opción A: Añadir temporalmente (solo para la sesión actual)
set PATH=%PATH%;C:\Windows\System32\WindowsPowerShell\v1.0\
Opción B: Añadir permanentemente (para todo el sistema)
Ejecuta CMD como administrador y escribe:
setx /M PATH "%PATH%;C:\Windows\System32\WindowsPowerShell\v1.0\"
Luego reinicia CMD o el sistema para que el cambio tenga efecto.
Verificación final
Prueba de nuevo en una ventana nueva de CMD:
powershell -Command "Get-ExecutionPolicy"
Si obtienes una respuesta como RemoteSigned
o Unrestricted
, PowerShell ya funciona correctamente en tu entorno.
Extras: PowerShell Core (pwsh.exe
)
Si estás en un entorno moderno, puedes instalar y usar PowerShell Core (v7+) como alternativa:
- Ejecutable:
pwsh.exe
- Ruta típica:
C:\Program Files\PowerShell\7\pwsh.exe
Este ejecutable se usa en sistemas Linux, Mac y también en Windows donde se prefiere una versión independiente.
Diagnóstico adicional
Si el problema persiste:
- Ejecuta
gpresult /h informe.html
y revisa políticas aplicadas. - Busca claves en el registro en:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PowerShell
comoDisablePowerShell
oExecutionPolicy
. - Revisa antivirus o Endpoint Protection que puedan bloquear PowerShell.
Conclusión
El error 'powershell' no se reconoce
suele resolverse asegurando que powershell.exe
esté presente y su ruta correctamente añadida al PATH
. Validar el entorno, corregir errores comunes y actualizar la variable de entorno garantiza que PowerShell esté disponible para scripts, automatización y administración del sistema.