Cambiar agregar y eliminar variables de entorno en Windows

Cambiar agregar y eliminar variables de entorno en Windows

Las variables de entorno en Windows. Cómo acceder a su modificación. Crear nuevas variables, modificarlas o eliminarlas.

Las variables de entorno en Windows

Las variables de entorno en Windows son cadenas que contienen datos de tipo texto que podemos utilizar en cualquier momento para saber, por ejemplo:

  • Nombre de usuario que ha iniciado sesión
  • Directorio predeterminado de Windows
  • Directorio TEMP por defecto
  • Datos del sistema operativo utilizado
  • Extensiones reconocidas por el sistema

Estos son solo algunos ejemplos, ya que podremos crear variables con datos propios de programas de terceros o propios con los valores que queramos.

Hay dos tipos de variables de entorno en Windows:

  • Variables de usuario
  • Variables de Sistema

Los dos tipos de variable son exactamente iguales con la única diferencia que las creadas para el usuario servirán únicamente para el usuario que ha iniciado sesión y las de sistema servirán para cualquier usuario ya que se consideran globales.

Para los que trabajen con lenguajes de programación sería como crear variables locales para una rutina específica o globales para ser usadas en todo el programa.

¿Como acceder a las Variables de entorno?

El acceso a las variables de entorno, de usuario y sistema, lo podemos hacer desde el menú inicio escribiendo variables de entorno. Se abrirá la ventana de Propiedades del sistema

Propiedades del sistema - Variables de entorno
Propiedades del sistema – Variables de entorno

Dependiendo de los programas que tengamos instalados podremos tener más o menos variables de entorno de usuario y sistema creadas.

Mediante los botones Nueva…, Editar…, Eliminar… podemos acceder respectivamente a la creación, edición o eliminación de las variables de entorno de Windows.

Hay algunas variables de entorno de sistema que vienen creadas por defecto cuando instalamos el sistema operativo y no es recomendable editarlas ni eliminarlas ya que podría afectar el funcionamiento de algunos programas.

  • windir: variable que almacena la ruta absoluta del directorio donde está instalado Windows.
  • TMP: variable que almacena la ruta absoluta de la carpeta temp utilizada por el sistema operativo
  • Path: variable que almacena rutas separadas por punto y coma para diferentes accesos a archivos o directorios
  • OS: nombre del sistema operativo

Un claro ejemplo del problema que podemos tener al cambiar una variable por defecto del sistema es el dato contenido en windir. Si eliminamos o cambiamos el valor programas que necesiten acceso a este directorio de sistema, podrían tener problemas si el dato falta o es erróneo.

Puedes crear tantas variables de entorno como necesites.

Saber todas las variables de entorno del sistema

Hay una manera de consultar la lista total de variables de entorno, tanto del sistema como las de usuario. La tarea se realiza mediante una consulta por línea de comando desde el CMD. El comando SET es el encargado de mostrarnos las variables ya definidas. Si abres una consola y escribes el comando se te mostrará toda la información de variables y sus valores.

Crear variables de entorno por línea de comando

La utilidad que trae Windows para crear variables de entorno es muy útil para el usuario común ya que dispone de un interfaz amigable y sencilla de utilizar. Pero que pasa si queremos crear una variable de entorno desde la línea de comando o desde nuestro propio programa.

La tarea hay que realizarla mediante el siguiente comando:

SETX
VARIABLE VALOR

El comando creará una variable con el nombre VARIABLE y el valor será el que especifiquemos en el segundo parámetro. Un ejemplo práctico de cómo crear una variable de entorno por línea de comando sería:

SETX
MiPrograma C:\Dontecno\ejecutar.exe

Cuando llamemos a la variable MiPrograma se leerá el valor C:\Dontecno\ejecutar.exe ejecutándose directamente el programa almacenado en esa ubicación.

Como se accede a una variable de entorno desde el CMD

Cada lenguaje de programación tiene una forma específica de acceso a las variables. En este caso el lenguaje es el BATCH, utilizado en DOS e incorporado en Windows en todas sus versiones.

Para acceder a una variable de entorno desde la línea de comando debes encerrar el nombre de la variable entre %. Por ejemplo para saber el valor de la variable USERNAME solo hay que referenciarla escribiendo %USERNAME%

Variables con datos No fijos

Siguiendo con el ejemplo, la variable USERNAME es del tipo fijo ya que una vez iniciado sesión la misma no cambia de valor.

Las variables con datos No fijos cambian su valor dependiendo de donde o cuando se ejecuten. Algunos ejemplos de variables con dato No fijo:

  • %CD% – Muestra la ruta actual de trabajo
  • %TIME% – Hora del sistema
  • %DATE% – Fecha del sistema
  • %ERRORLEVEL% – Código de error de BATCH

Lista de variables en Windows

Aquí una lista (en orden alfabético) de las variables de entorno más interesantes en Windows, para que utilices en tus script BATCH o programas personales.

%ALLUSERSPROFILE%Devuelve la ruta del perfil de todos los usuarios creados en Windows.
Por lo general es C:\ProgramData
%APPDATA%Devuelve la ruta de la carpeta donde los programas almacenan algunos datos. La carpeta está oculta y cada usuario dispone de una personal.
La ruta es
C:\Users\%USERNAME%\AppData\Roaming
%COMMONPROGRAMFILES%Ruta de la carpeta donde los programas almacenan archivos comunes.
La ruta es
C:\Program Files\Common Files
%CMDCMDLINE%Muestra la ruta de ejecución de cmd.exe más la ruta del archivo que le dio origen a la consola.
%CMDEXTVERSION%Número de versión del intérprete de comandos.
%COMPUTERNAME%Nombre del equipo.
%COMSPEC%Ruta shell de comandos.
Por lo general es C:\Windows\System32
%DATE%Fecha basado en la de sistema
%ERRORLEVEL%Código de error BATCH del último comando ejecutado en la consola.
%HOMEDRIVE%Unidad del directorio actual de trabajo
%HOMEPATH%Ruta completa del directorio de trabajo
%LOGONSERVER%Nombre de servidor. como prefijo utiliza \\
%LOCALAPPDATA%Carpeta de archivos temporales de algunos programas.
Por lo general es C:\Users\%USERNAME%\AppData\Local
%NUMBER_OF_PROCESSORS%Número de procesadores del equipo
%OS%Nombre del sistema operativo
%PATH%Lista separada con punto y coma de rutas a directorios y archivos que pueden utilizarse a través de esta variable
%PATHEXT%Lista separada por punto y comas con las extensiones conocidas de los archivos ejecutables.
%PROCESSOR_ARCHITECTURE%Arquitectura del procesador.
%PROCESSOR_IDENTIFIER%Descripción del procesador.
%PROCESSOR_LEVEL%Número de modelo de procesador.
%PROCESSOR_REVISION%Número de revisión del procesador.
%PROGRAMDATA%Ruta donde los programas almacenan algunos datos.
Por lo general es C:\ProgramData
%PROGRAMFILES%Ruta por defecto donde se instalan los programas.
Por lo general es C:\Archivos de Programa
%PSModulePath%Ruta a los módulos PowerShell
La ruta es C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
%PUBLIC%Ruta de los datos públicos compartidos de todos los usuarios
Por lo general es C:\Users\Public
%RANDOM%Genera un número aleatorio entre 0 y 32767
%SYSTEMDRIVE%Unidad que contiene el directorio raíz donde está instalado Windows.
Por lo general es C:
%SYSTEMROOT%Ruta de la carpeta de administración.
Por lo general es C:\Windows
%TEMP% %TMP%Ruta donde los programas almacenan datos temporales.
%TIME%Hora basada en la del sistema
%USERNAME%Nombre de usuario de la sesión
%USERPROFILE%Ruta donde están los archivos del usuario actual.
Por lo general es C:\Users\NombreDeUsuario
%WINDIR%Ruta del directorio Windows.
Por lo general es C:\Windows

Las variables de entorno no diferencian mayúsculas de minúsculas. Será lo mismo escribir %WINDIR% que %windir%. Por lo general para destacarlas en el código se suele usar la mayúscula.

Te fue útil el artículo? Califícalo

Votos: - Promedio: