¿Qué son las variables de entorno?
Las variables de entorno contienen valores relacionados con el entorno actual, como el sistema operativo o las sesiones de usuario.
Camino
Uno de los más conocidos se llama PATH
en Windows, Linux y Mac OS X. Especifica los directorios en los que se encuentran los programas ejecutables * en la máquina que se pueden iniciar sin conocer y escribir la ruta completa del archivo en la línea de comandos . (O en Windows, el cuadro de diálogo Ejecutar en el menú Inicio o + R).
En Linux y Mac OS X, que por lo general tiene todo bin
y sbin
directorios relevantes para el usuario actual. En Windows, contiene al menos los directorios C:\Windows
y C:\Windows\system32
, es por eso que puede ejecutar calc.exe
o notepad.exe
desde la línea de comando o el cuadro de diálogo Ejecutar , pero no firefox.exe
. (Firefox se encuentra en C:\Program Files\Mozilla Firefox
. Para obtener información sobre cómo incluir Firefox, vaya aquí ).
Por ejemplo, al escribir calc
( .exe
se puede omitir) en la línea de comandos en Windows, se iniciará la Calculadora de Windows.
* Puede agregar soporte para extensiones de archivo que no sean .exe
editando %PATHEXT%
.
Otro
Otras variables pueden indicarle a los programas qué tipo de terminal se usa ( TERM
en Linux / Mac OS X) o, en Windows, dónde se encuentra la carpeta de Windows (por ejemplo, %WINDIR%
es C:\Windows
).
Crear nuevas variables de entorno
En Windows, Linux y Unix, es posible crear nuevas variables de entorno, cuyos valores se ponen a disposición de todos los programas al iniciarlos.
Puede usar esto al escribir scripts o programas que se instalan o implementan en varias máquinas y necesitan hacer referencia a valores específicos de estas máquinas. Si bien se puede lograr un efecto similar usando configuraciones de configuración específicas del programa, es más fácil hacerlo usando una variable de entorno si varios programas necesitan acceder al mismo valor.
Ventanas
GUI
Abierto Control Panel » System » Advanced » Environment Variables
.
Escriba control sysdm.cpl,,3
en el cuadro de diálogo Ejecutar ( + R) y haga clic Environment Variables
.
Para editar variables de usuario también puede escribir
%windir%\System32\rundll32.exe sysdm.cpl,EditEnvironmentVariables
en el cuadro de diálogo Ejecutar.
Haga clic derecho en (Mi) Computadora y haga clic en Propiedades, o simplemente presione + Break.
- En XP, haga clic en
Advanced » Environment Variables
.
- En Vista + haz clic en
Advanced system settings » Environment Variables
.
Hay muchas otras formas de llegar al mismo lugar, como escribiendo "variables de entorno" en el cuadro de búsqueda del menú Inicio / pantalla y así sucesivamente.
Las variables de entorno en Windows se separan en valores específicos de usuario y máquina / sistema. Puede ver y editar sus valores allí. Sus valores actuales en el lanzamiento están disponibles para todos los programas.
También hay Rapid Environment Editor , que ayuda a configurar y cambiar las variables de entorno en Windows sin la necesidad de profundizar en la configuración del sistema. Otro editor de código abierto para Windows con el que el entorno de ruta se puede editar de manera muy conveniente es Path Editor .
Línea de comando
Formato
Las variables de entorno en Windows se denotan con signos de porcentaje (%) que rodean el nombre:
%name%
eco
Para mostrar el valor de una variable de entorno en cmd.exe
, escriba echo %name%
.
C:\>echo %USERPROFILE%
C:\Users\Daniel
conjunto
Para crear / establecer una variable, use set varname=value
:
C:\>set FunnyCatPictures=C:\Users\Daniel\Pictures\Funny Cat Pictures
C:\>set FunnyCatPicturesTwo=%USERPROFILE%\Pictures\Funny Cat Pictures 2
Para agregar / agregar una variable, use set varname=value;%varname%
:
C:\>set Penguins=C:\Linux
C:\>set Penguins=C:\Windows;%Penguins%
C:\>echo %Penguins%
C:\Windows;C:\Linux
Las variables de entorno establecidas de esta manera están disponibles para (el resto de) la duración del proceso del Símbolo del sistema en el que se establecen, y están disponibles para los procesos que se inician después de que se establecieron las variables.
setx
Para crear / establecer una variable de forma permanente , use setx varname "value"
:
C:\>setx FunnyCatPictures "C:\Users\Daniel\Pictures\Funny Cat Pictures"
[Restart CMD]
C:\>echo %FunnyCatPictures%
C:\Users\Daniel\Pictures\Funny Cat Pictures
A diferencia set
, no hay signo igual y el valor debe estar entre comillas si contiene espacios. Tenga en cuenta que las variables pueden expandirse a una cadena con espacios (por ejemplo, se %PATH%
convierte C:\Program Files
), por lo que es mejor incluir comillas alrededor de los valores que contienen cualquier variable.
Debe agregar manualmente setx
a las versiones de Windows anteriores a Vista.
Herramientas de soporte de Windows XP Service Pack 2
Lista de variables de entorno de Windows
Aquí hay una lista de variables de entorno predeterminadas , que están integradas en Windows. Algunos ejemplos son:
%WINDIR%
, %SystemRoot%
, %USERPROFILE%
, y %APPDATA%
. Como la mayoría de los nombres en Windows, estos no distinguen entre mayúsculas y minúsculas.
Derivados de Unix (FreeBSD, GNU / Linux, OS X)
Las variables de entorno en Linux tienen el prefijo de un signo de dólar ($) como $ HOME o $ HOSTNAME. Muchas variables estándar y bien conocidas se explican en mayúsculas para indicar exactamente eso. Tenga en cuenta que los nombres de las variables distinguen entre mayúsculas y minúsculas, lo que significa que $ User y $ USER no tienen relación alguna desde el punto de vista del shell.
Los derivados de Unix definen variables de todo el sistema en scripts de shell ubicados principalmente en la /etc
carpeta, pero se pueden dar valores específicos del usuario a esas variables en scripts ubicados en la carpeta de inicio (por ejemplo /etc/profile
, $HOME/.bash_profile
). El .profile
archivo en la carpeta de inicio es un lugar común para definir variables de usuario.
Establecer variables
Estos archivos son scripts de shell normales y pueden contener más que solo declaraciones de variables de entorno. Para establecer una variable de entorno, use export
. Para mostrar las variables de entorno definidas actualmente en un terminal, ejecute env
.
El export
comando es una forma estándar de definir variables. La sintaxis es muy intuitiva. El resultado es idéntico para estas dos líneas, pero la primera alternativa es preferible en caso de que sea necesaria la portabilidad al shell Bourne pre POSIX.
var=value; export var
export var=value
El shell C y sus descendientes usan una sintaxis completamente diferente; ahí está el comando setenv
.
Vea el proyecto de documentación de Linux, Path HOWTO para una discusión más completa sobre este tema.
Quizás contrario a la creencia común, OS X es más "Unix" que Linux. Además de los archivos ya mencionados, $ PATH se puede modificar en estos archivos:
/etc/paths
contiene todos los directorios predeterminados que se agregan a la ruta, como /bin
y /usr/sbin
.
- Cualquier archivo en
/etc/paths.d
- comúnmente utilizado por los instaladores para hacer que los archivos ejecutables que proporcionan estén disponibles desde el shell sin tocar archivos de configuración específicos del usuario o de todo el sistema. Estos archivos simplemente contienen una ruta por línea. por ejemplo, / Programas / Mozilla / Calendario / bin.
Enlaces externos:
Variables de entorno en XP
Windows XP Service Pack 2 Herramientas de soporte (Incluye setx
)
Variables de entorno en Windows Vista y Windows 7
Agregar ejecutables al cuadro de diálogo Ejecutar
Consejos para Mac OSX - Establecer variables de entorno
TLDP: Guía de ruta