La variable PATH de Windows: qué es y cómo añadir una carpeta
«python no se reconoce como un comando interno o externo»: casi siempre es culpa del PATH. Qué es esta lista de carpetas y cómo añadir una sin estropear nada.
Cuando escribes un comando en la terminal, como python o git, Windows tiene que encontrar el programa que corresponde. No busca en todo el disco: mira en una lista de carpetas guardada en una variable de entorno llamada PATH. Si el programa no está en ninguna de esas carpetas, aparece el famoso error:
«python» no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable.
En PowerShell el mensaje es parecido: «El término "python" no se reconoce como nombre de un cmdlet, función, archivo de script o programa ejecutable».
Antes de tocar nada
Muchos instaladores (Python, Git, Node.js, VS Code…) añaden su carpeta al PATH solos, a veces con una casilla que hay que marcar durante la instalación, como «Add python.exe to PATH». Así que antes de editarlo a mano:
- Cierra y vuelve a abrir la terminal. Los cambios en el PATH no afectan a las ventanas que ya estaban abiertas; esta es la causa más habitual de que «no funcione» justo después de instalar.
- Si sigue sin funcionar, reinstala el programa y busca la casilla del PATH.
- Si el programa es tuyo o no tiene instalador (una carpeta con un
.exe), entonces sí, añádelo a mano.
Cómo ver qué hay en el PATH
En PowerShell (la terminal de Windows), escribe:
$Env:Path -split ';'
Verás una carpeta por línea. En Windows, las carpetas del PATH van separadas por punto y coma (;).
Para saber en qué carpeta encuentra Windows un comando, usa where.exe:
where.exe python
Si aparece más de una ruta, Windows usa la primera. Esto explica por qué a veces se ejecuta una versión distinta de la que esperabas.
Cómo añadir una carpeta al PATH
- Pulsa Inicio, escribe variables de entorno y abre Editar las variables de entorno del sistema (o «Editar las variables de entorno de esta cuenta»).
- Pulsa el botón Variables de entorno….
- Hay dos listas, y las dos tienen su propia variable Path:
- Variables de usuario: solo para tu cuenta. Usa esta salvo que necesites lo contrario; no requiere permisos de administrador.
- Variables del sistema: para todos los usuarios del equipo.
- Selecciona Path y pulsa Editar….
- Pulsa Nuevo y pega la ruta de la carpeta que contiene el programa (por ejemplo,
C:\Herramientas\ffmpeg\bin), no la ruta del.exe. - Pulsa Aceptar en todas las ventanas y abre una terminal nueva.
Comprueba que funciona con where.exe seguido del nombre del programa.
Errores que conviene evitar
- No borres entradas que no conozcas. Otros programas (y Windows) las necesitan.
- No sustituyas el PATH entero por una sola carpeta: añade siempre con Nuevo.
- El orden importa: si tienes dos versiones del mismo programa, gana la que está más arriba. Puedes cambiar el orden con Subir y Bajar.
- Añade solo carpetas de programas de confianza: lo que pongas en el PATH se podrá ejecutar desde cualquier sitio.
Cambiarlo solo para una sesión
Si solo lo necesitas un momento, puedes añadir una carpeta para la terminal actual; al cerrarla, el cambio desaparece:
$Env:Path += ';C:\Herramientas\ffmpeg\bin'
Si estás empezando a programar, puede que te interese también Visual Studio Code, que añade su comando code al PATH al instalarse, o instalar tus herramientas con winget.
Fuentes consultadas
- about_Environment_Variables (Microsoft)
- where (Microsoft)
