Las variables de entorno se crean por la necesidad de acceder al contenido de valores dinámicos, distintos en cada sistema, son parámetros preestablecidos a rutas, valores o aplicaciones que cambian según el entorno, PC o sistema o el usuario que los utilice.
Las variables permiten acceder a archivos y funciones comunes del sistema en cualquier lugar donde estas se encuentren localizadas.
Cada usuario tiene la opción de escoger diferentes ubicaciones físicas a archivos y directorios de su sistema, pero siempre las variables indicarán la ubicación exacta.
Algunos ejemplos de variables de entorno preestablecidas son:
El directorio donde escriben los archivos temporales las aplicaciones o programas es %TEMP% o %TMP%.
¿Cuál es el uso práctico de las variables de entorno?
Cualquier aplicación del sistema o programa instalado, al tener necesidad de escribir valores en tu carpeta de usuario. solo podrá hacerlo utilizando la variable antes mencionada %USERNAME%.
La ruta es diferente en cada equipo porque incluye el nombre del usuario que difiere en cada ocasión.
De la misma forma si creas un archivo batch para copiar un archivo determinado en la carpeta Escritorio y deseas que puedan utilizarlo otros usuarios, es necesario usar la variable %USERPROFILE% ya que la carpeta Escritorio se encuentra dentro de la carpeta del usuario.
En este caso tu archivo batch tendrá que contener la ruta: %USERPROFILE%\Desktop para asegurarte que funcione en cualquier computadora en la que se ejecute.
De forma similar se usan otras variables de entorno existentes.
Windows incluye algunas predeterminadas, pero existen otras que son agregadas por programas y que son imprescindibles para su funcionamiento.
¿Cómo conocer las variables de entorno de nuestro sistema?
Para conocer las variables de entorno actualmente establecidas en nuestro sistema, solo es necesario abrir la consola de cmd e introducir el comando SET, se mostrarán todas las variables de entorno actuales junto con sus respectivos valores.
¿Cómo crear una variable de entorno?
Es posible crear variables de entorno en nuestro sistema, para establecer parámetros determinados en la configuración de Windows.
Existen dos maneras, mediante la interface de Windows y utilizando la línea de comandos.
1- Crear una variable de entorno mediante la interface de Windows
Ejemplo 1- Crear una variable para establecer un directorio que sirva de destino y almacén para que todos los archivos que se copien con distintos comandos se guarden allí.
En este ejemplo la carpeta que recibirá todos los archivos que copies está en la ruta: D:\Almacen
Propiedades de Mi PC -> Opciones avanzadas -> Variables de entorno
En la parte superior de la ventana donde dice Variables de entorno para el usuario, da un clic sobre el botón Nuevo.
En Nombre de la variable escribe COPIAS.
En Valor la ruta: D:\Almacen.
Es todo.
Un ejemplo del código usado para copiar todo el contenido de un DVD que está en la unidad E a tu carpeta Almacén: robocopy E:\ %COPIAS% /E
Ejemplo 2- Crear una variable para ejecutar una aplicación, en este ejemplo VirtualDub que está en la ruta: C:\Aplicaciones\VirtualDub-1.9.3\VirtualDub.exe.
Para iniciar la aplicación en la ventana de cmd escribe %VD% y Enter.
2- Crear una variable de entorno utilizando la línea de comandos
Para crear la variable del primer ejemplo solo utiliza: SETX COPIAS D:\Almacen y presiona Enter.
Como verás es mucho más fácil. .
Lista de las variables de entorno en Windows 7 y 8
Algunas de las variables no almacenan un valor fijo, sino que se evalúan al momento de pedir su valor, son los casos de: %CD%, %DATE%, %TIME%, %ERRORLEVEL% y %CMDCMDLINE%.
%ALLUSERSPROFILE% | Esta variable devuelve la localización del perfil de todos los usuarios, por lo general es C:\Program\Data, carpeta oculta en la unidad C. |
%APPDATA% | Una de las variables más utilizadas, carpeta oculta donde guardan sus datos las aplicaciones, se encuentra dentro de la carpeta de usuario. En Windows 7 y Vista la ruta es la siguiente: C:\Users\NombreDeUsuario\AppData\Roaming. En Windows XP la ruta es diferente: C:\Documents and Settings\NombreDeUsuario\Datos de programa |
%COMMONPROGRAMFILES% | Carpeta donde los programas almacenan archivos comunes: C:\Program Files\Common Files. |
%CMDCMDLINE% | Muestra el comando exacto empleado para acceder al intérprete de comandos (cmd.exe). Por ejemplo usándolo en la ubicación exacta de la consola muestra: C:\Windows\system32\cmd.exe Abriendo una ventana de cmd en el escritorio mostrará: «cmd.exe» /s /k pushd «C:\Users\NombreDeUsuario\Desktop» |
%CMDEXTVERSION% | Devuelve el número de versión de nuestro intérprete de comandos. |
%COMPUTERNAME% | Devuelve el nombre del equipo. |
%COMSPEC% | Devuelve la ruta de la shell de comandos, normalmente: C:\Windows\System32. |
%DATE% | Devuelve la fecha actual. |
%ERRORLEVEL% | Devuelve el código de error del último comando ejecutado. |
%HOMEDRIVE% | Devuelve la unidad en la que está el directorio en el que estás actualmente. |
%HOMEPATH% | Devuelve la ruta completa a dicho directorio. |
%LOGONSERVER% | Devuelve el nombre de nuestro servidor (similar a COMPUTERNAME pero antecedido de dos barras inclinadas \\) |
%LOCALAPPDATA% | Carpeta donde los programas guardan archivos temporales. Generalmente C:\Users\NombreDeUsuario\AppData\Local. |
%NUMBER_OF_PROCESSORS% | Devuelve el número de procesadores instalados en el equipo. |
%OS% | Devuelve nuestro sistema operativo, con la excepción de Windows 2000 y XP que lo devuelven como Windows_NT. |
%PATH% | Contiene una lista separada por punto y coma de directorios en los cuales se buscarán los archivos ejecutables que no se invocan con una ruta explícita. Aparecerá lo siguiente más otros directorios agregados por diversas aplicaciones. C:\Windows\system32; C:\Windows; C:\Windows\System32\Wbem; C:\Windows\System32\WindowsPowerShell\v1.0\ |
%PATHEXT% | Esta variable contiene una lista separada por punto y comas con las extensiones conocidas de los archivos ejecutables. Si el nombre de un ejecutable termina con una extensión incluida en esta lista, es posible omitir dicha extensión al invocar el programa. Por ejemplo: .COM; .EXE; .BAT; .CMD; .VBS; .VBE; .JS; .JSE; .WSF; .WSH; .MSC |
%PROCESSOR_ARCHITECTURE% | Devuelve la arquitectura del procesador. |
%PROCESSOR_IDENTIFIER% | Devuelve la descripción del procesador. |
%PROCESSOR_LEVEL% | Devuelve el número de modelo de procesador. |
%PROCESSOR_REVISION% | Devuelve el número de revisión del procesador. |
%PROGRAMDATA% | Carpeta donde los programas almacenan datos, normalmente: C:\ProgramData. |
%PROGRAMFILES% | Devuelve la carpeta donde se instalan los programas, normalmente: C:\Archivos de Programa. |
%PSModulePath% | Ruta a los modulos de PowerShell, C:\Windows\system32\WindowsPowerShell\v1.0\Modules\ |
%PUBLIC% | Carpeta donde se guardan datos públicos compartidos de todos los usuarios, generalmente: C:\Users\Public. |
%RANDOM% | Devuelve un número al azar entre 0 y 32767. |
%SYSTEMDRIVE% | Devuelve la unidad que contiene el directorio raíz del sistema, generalmente: C. |
%SYSTEMROOT% | Devuelve la carpeta de administración, que suele ser C:\Windows. |
%TEMP% %TMP% | Estas dos variables contienen la ruta a los directorios donde las aplicaciones y programas pueden almacenar sus archivos temporales. En Windows 7 es: C:\Users\NombreDeUsuario\AppData\Local\Temp En Windows XP la ubicación es: C:\Documents and Settings\NombreDeUsuario\Configuración local\Temp |
%TIME% | Devuelve la hora actual. |
%USERNAME% | Devuelve el nombre del usuario actual. |
%USERPROFILE% | Devuelve la ruta del directorio donde están los archivos del usuario actual, normalmente: C:\Users\NombreDeUsuario. |
%WINDIR% | Devuelve la ruta de la carpeta del sistema operativo, normalmente: C:\Windows. |
Lista de las variables de entorno en Windows XP
%ALLUSERSPROFILE% | Localización del perfil de todos los usuarios, por lo general es C:\Documents and Settings\All Users |
%APPDATA% | Carpeta oculta donde guardan sus datos las aplicaciones, se encuentra dentro de la carpeta de usuario. C:\Documents and Settings\NombredeUsuario\Datos de programa |
%CLIENTNAME% | Nombre del equipo |
%CommonProgramFiles% | Archivos comunes: C:\Archivos de programa\Archivos comunes |
%COMPUTERNAME% | Nombre del equipo |
%ComSpec% | Ruta al ejecutable de CMD: C:\WINDOWS\system32\cmd.exe |
%HOMEDRIVE% y %SystemDrive% | Unidad de sistema |
%HOMEPATH% | Ruta relativa a la carpeta del usuario: \Documents and Settings\NombredeUsuario |
%Path% | Rutas a los ejecutables del sistema |
%PATHEXT% | Archivos ejecutables predeterminados: .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH |
%ProgramFiles% | Ubicación de los archivos de programas, normalmente: C:\Archivos de programa |
%SystemRoot% y %Windir% | Carpeta de Windows, generalmente: C:\WINDOWS |
%TEMP% y %TMP% | Ubicación de archivos temporales, generalmente: C:\Documents and Settings\Configuración local\Temp |
%USERNAME% | Nombre del Usuario |
%USERPROFILE% | Carpeta del usuario, generalmente: C:\Documents and Settings\NombredeUsuario |
Descarga un archivo batch para listar algunas Variables de entorno
Sencillo e instructivo batch que lista las informaciones que suministran las variables de entorno de nuestro sistema.