Path de ejecutables en Windows
¿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 WindowsHOMEPATH
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"
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
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
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.