Logo Reaper

Variables de entorno

No hace falta ser un programador para tener que haber lidiado en algún caso con las variables de entorno. Puede ser, por ejemplo, que a la hora de instalar o configurar algún programa para Windows te hayas encontrado con una ruta que, en lugar de seguir la típica estructura

C:/Users/YoMismo/carpeta

muestre algo como

%USERPROFILE%/carpeta

Eso es porque %USERPROFILE% es una variable de entorno, una cadena de texto que sistemas operativos como Windows, Linux o Mac usan para almacenar valores que pueden variar de un equipo a otro, O como en este caso, de un usuario a otro. Un modo unificado de acceder a estos elementos.
Normalmente, esos valores hacen referencia a archivos, directorios y funciones comunes del sistema cuya ruta concreta puede variar, pero que otros programas necesitan poder conocer. Hay muchas más variables de entorno además de %USERPROFILE%. Veamos algunas:

Pero las variables de entorno no siempre equivalen a rutas de directorios: pueden remitir a otra clase de información. Así,

Pero quizá la variable de entorno con la que más habitualmente tendremos que lidiar será %PATH%. ¿Y cuál es su función? ¿Os habéis fijado que, cuando tecleáis un comando propio de Windows (por ejemplo, Regedit) no es necesario teclear la ruta completa del ejecutable?
Eso es porque, cada vez que tecleamos un comando, el sistema revisa las carpetas contenidas en la variable %PATH% para comprobar si algún archivo ejecutable coincide con el mismo.
Es un recurso muy usado, por ejemplo, por los desarrolladores que desean llamar a un intérprete o compilador desde la carpeta del proyecto en el que estén trabajando; muchos IDE también recurren al %PATH% para ejecutar dichas herramientas.

Editar las variables path

Hay varias maneras de llegar a la configuración de dichas variables. Una opción para los usuarios de windows 10 podría ser abrir el menú de inicio con la tecla windows, escribir variables, descender con flechas y pulsar sobre editar las variables de entorno del sistema.
Otra opción es abrir el menú ejecutar, escribir

SystemPropertiesAdvanced

Y al pulsar intro llegaremos al mismo lugar, donde hay que tabular hasta variables de entorno.
Una vez aquí deberemos proceder con mucho cuidado, ya que si eliminamos algo indebido podremos ocasionarnos unos cuantos dolores de cabeza. Por defecto vamos a caer en la lista de rutas de usuario, no confundir con la de sistema. Descendemos con flechas hasta path, y tabulamos hasta editar.
Al pulsar sobre esa opción, se va a visualizar la lista de rutas ya incorporadas, las cuales podremos recorrer con flechas y editar o eliminar pulsando sobre la opción correspondiente en las acciones mostradas al tabular.
Si lo que se quiere es añadir una ruta a las variables, deberemos tabular hasta nuevo, y una vez pulsado escribir o pegar la ruta de la carpeta o archivo en el cuadro que se activa. Una vez realizado, pulsar aceptar en todas las ventanas que se van presentando.
En algunas ocasiones puede que sea necesario reiniciar la sesión o el equipo para que los cambios sean efectivos.

Ejemplo con FFMPEG

Suelo utilizar mucho este programa, por lo que suelo añadirlo a las variables de entorno para poder llamarlo desde cualquier lugar. Creamos una nueva carpeta en algún lugar del equipo y pegamos dentro el archivo ffmpeg.exe.

Dentro de esta carpeta pulsamos el comando alt + d, y luego control + c para copiar la ruta mostrada y seleccionada al portapapeles.

Abrimos el menú ejecutar con windows + r, escribimos lo siguiente y pulsamos intro

SystemPropertiesAdvanced

Tabulamos hasta variables de entorno y las abrimos pulsando barra espaciadora.

Una vez abiertas bajamos una vez conflechas hasta "path", y tabulamos hasta editar.
Una vez pulsada esta opción, el foco queda en la lista de rutas. Tabulamos una vez hasta nuevo, y lo pulsamos.
Pegamos la ruta copiada previamente al portapapeles con control + v, pulsamos intro y vamos pulsando aceptar en todas las ventanas.

Una vez finalizado el proceso, si abrimos el símbolo del sistema (cmd) en cualquier carpeta ya podremos utilizar los comandos de ffmpeg sin tener que escribir la ruta completa del archivo ejecutable, por ejemplo:

ffmpeg -i archivo.mp3 -af "volume=3 dB" archivo-modificado.mp3

Nota: Cualquier archivo, acceso directo, ejecutable, pegado en esa carpeta podrá ser llamado desde el menú ejecutar o CMD tan solo con su nombre y los parámetros en el caso que los requiera.