Path de ejecutables en Windows

De ChuWiki


¿Qué son las variables de entorno de Windows?[editar]

Windows tiene definidas una serie de valores guardados en variables. Por ejemplo y son solo algunas

  • USERNAME el nombre del usuario que está usando Windows
  • HOMEPATH El directorio del usuario.
  • PATH Todos los directorios, separados por punto y coma, donde hay ejecutables que windows debe encontrar
  • etc, etc.

Ver y cambiar variables de entorno de windows desde línea de comandos[editar]

Si desde una ventana de comandos de windows escribimos set, veremos un listado de todas las variables con su valor

C:\>set
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\fjabe\AppData\Roaming
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
ComSpec=C:\WINDOWS\system32\cmd.exe
configsetroot=C:\WINDOWS\ConfigSetRoot
DriverData=C:\Windows\System32\Drivers\DriverData
GDAL_DATA=C:\Program Files\PostgreSQL\12\gdal-data
GRADLE_HOME=C:\Users\fjabe\Aplicaciones\gradle-7.3.2
HOMEDRIVE=C:
HOMEPATH=\Users\fjabe
JAVA_HOME=C:\Program Files\Zulu\zulu-17\
...
Path=C:\Program Files\Zulu\zulu-17\bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\Program Files\PuTTY\;C:\Program Files\Calibre2\;C:\Users\fjabe\AppData\Local\Programs\Python\Python311\Scripts\;C:\Users\fjabe\AppData\Local\Programs\Python\Python311\;C:\Users\fjabe\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Zulu\zulu-17\\bin;C:\Users\fjabe\Aplicaciones\gradle-7.3.2\bin;C:\Program Files (x86)\Vim\vim81;C:\Users\fjabe\Aplicaciones\Apache-Subversion-1.13.0\bin;C:\Users\fjabe\Aplicaciones\apache-maven-3.6.3\bin;C:\Program Files\PostgreSQL\12\bin;C:\Program Files\JetBrains\PyCharm Community Edition 2022.2.3\bin;;C:\Users\fjabe\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\fjabe\Aplicaciones\libwebp-1.3.2-windows-x64\bin;
...

Si escribimos set seguido del nombre de una variable, veremos su valor

C:\>set windir
windir=C:\WINDOWS

Si añadimos un = valor, le estamos moficando el valor, o creando la variabel si no existe.

C:\>set SALUDO=Hola

C:\>set SALUDO
SALUDO=Hola

Al crear/modificar una variable, podemos usar otra variable poniéndola entre símbolos %

C:\>set SALUDO=Hola %USERNAME%

C:\>set SALUDO
SALUDO=Hola javier

USERNAME es la variable donde Windows guarda el nombre del usuario. Esto permite añadir contenido a una variable existente. Por ejemplo, suele ser habitual querer añadir más directorios a la variable Path porque hemos instalado más ejecutables en nuevos directorios

C:\>set Path=%Path%;C:\NuevoDirectorioConEjecutables

Cambiar variables de entorno de forma permanente[editar]

Los cambios que hagamos en las variables de de entorno desde la ventana de comandos cmd de windows solo son visibles en esa ventana. Si cerramos la ventana cmd, perdemos los cambios.

Para que el cambio sea permanente, debemos hacerlo desde el editor de variables de entorno de Windows. En Windows 10 y 11, en la caja de "Buscar" de la barra de tareas, escribe "Variables de entorno"

Abrir el editor de variables de entorno del sistema
Abrir el editor de variables de entorno del sistema

Elige "Editar las variables de entono de esta cuenta". Esto lo hará solo para tu usuario de Windows. Si cambias las del sistema, necesitarás permisos de administrador y lo estarás cambiando para todos los usuario del sistema.

Se abre una ventana "Propiedades del sistema" en la que debes seleccionar la pestaña "Opciones Avanzadas". Obtendremos algo como esto

Ventana de variables de entorno del usuario en Windows
Ventana de variables de entorno del usuario en Windows

Vemos arriba un bloque de variables para el usuario (Javier en mi caso) y otro bloque debajo para variables del sistemma. Tocaremos las de usuario.

Vemos, por ejemplo, la variable JAVA_HOME con el directorio donde tengas instalado tu JDK de Java. Esta variable no viene por defecto en Windows pero es bastante habitual crearla si utilizas aplicaciones JAVA. Fíjate que no es el directorio "bin" de la instalación de Java ni ningún otro subdirectorio de la instalación. Es directamente el directorio donde está instalado Java.

Como hemos comentado, es habitual añadir más directorios de ejecutables en la variable Path. Haz doble click en ella y se abrirá una ventana

Ventana Path de Windows
Ventana Path de Windows

Fíjate, por ejemplo, que para añadir al Path el directorio donde están los ejecutables Java, hemos usado %JAVA_HOME%/bin. Esto es posible porque tenemos definida la variable JAVA_HOME como hemos comentado antes.