Contenido del curso
Archivos y directorios
Busqueda en la terminal
Funcionamiento de la terminal
Sistema operativo
- 14

Permisos de archivos en Linux con chmod
12:53 min - 15

Variables de entorno en Bash explicadas
Viendo ahora - 16

Uso de APT para gestionar paquetes en Linux
07:36 min - 17

Homebrew: gestor de paquetes para Mac
07:22 min - 18

Foreground y background en la terminal
06:39 min - 19

Cómo identificar y matar procesos en Linux
13:01 min
Utilidades del sistema
Bonus: Trucos y consejos extras
Variables de entorno en Bash explicadas
Resumen
Las variables de entorno son piezas clave del shell que almacenan información reutilizable entre procesos. Aprender a leerlas, crearlas y exportarlas te permite configurar tu sistema operativo, controlar rutas y compartir valores con otros programas, ya sea en Linux, macOS o Windows.
El terminal no es solo un lugar para ejecutar comandos. Es un ecosistema completo con sesiones, permisos, redirecciones y, claro, variables de entorno que dan contexto a todo lo que haces.
¿Qué es una variable de entorno y para qué sirve?
Piensa en una variable de entorno como un contenedor con un valor que el sistema y los programas pueden consultar en cualquier momento. Para invocarla en el shell usas el símbolo $ antes del nombre.
Por ejemplo, al ejecutar echo $SHELL el sistema te devuelve la ruta donde está tu bin bash, es decir, el intérprete que estás usando. Si ejecutas echo $PWD, obtienes el Print Working Directory, que es el directorio actual. Y aquí viene lo interesante: si te mueves a otra carpeta, el sistema actualiza ese valor automáticamente.
¿Qué es una variable de entorno? Es un valor con nombre que el sistema operativo guarda para que cualquier proceso pueda leerlo. Sirve para compartir configuración, rutas y datos entre programas sin tener que escribirlos cada vez.
¿Por qué la variable PATH es tan importante?
La variable PATH es una de las más usadas en cualquier sistema. Contiene una lista de directorios donde el shell busca los binarios, es decir, los comandos que ejecutas.
Cuando escribes un comando, el sistema recorre cada ruta del PATH (como /sbin, /bin o incluso rutas de Java y, en WSL, partes de Windows) hasta encontrar el ejecutable. Si el comando no aparece en ninguna de esas rutas, simplemente no se ejecuta.
Otra variable útil es LANGUAGE, que indica la configuración de idioma y codificación del teclado, por ejemplo UTF-8.
¿Cómo veo todas las variables de entorno de mi sistema?
Para listar todas las variables disponibles tienes el comando env. Como la salida suele ser larga, conviene combinarla con el operador pipe y el comando less para navegarla con calma:
bash env | less
Ahí verás variables de referencia como SHELL, otras con valores configurables y muchas que el sistema usa para ajustes globales. Cuando quieres cambiar algo a nivel del sistema operativo, casi siempre terminas modificando una variable de entorno.
¿Cómo crear y exportar variables de entorno en Bash?
Sí, puedes crear tus propias variables. La sintaxis es directa: nombre, signo igual y valor.
bash MY_VAR="Hola mundo" echo $MY_VAR
Eso imprime Hola mundo. Pero esa variable solo vive dentro del terminal donde la creaste. Si un script de Python, JavaScript o Bash intenta leerla desde otro contexto, no la encontrará.
Ahí entra export. Esta instrucción promueve la variable para que esté disponible en otros procesos hijos:
bash export MY_VAR="Hola mundo"
¿Para qué sirve export en el terminal? Convierte una variable local en una variable accesible para los procesos y scripts que se ejecuten desde esa sesión. Sin export, la variable queda atrapada en tu shell actual.
¿Por qué desaparecen las variables al cerrar el terminal?
Las variables de entorno, igual que los aliases, son temporales y viven solo durante la sesión. Si cierras WSL y lo vuelves a abrir, echo $MY_VAR devolverá vacío.
Para que persistan necesitas guardarlas en el archivo de configuración de tu shell:
- En Bash:
~/.bashrc. - En Zsh:
~/.zshrc.
Un truco práctico es escribir la línea con echo y redirección, asegurándote de usar comillas:
bash echo 'export MY_VAR="Hola mundo"' >> ~/.bashrc
Después verifica con cat ~/.bashrc que la línea quedó añadida. Al reabrir el terminal, echo $MY_VAR mostrará el valor sin importar cuántas veces inicies sesión.
Un error común es ejecutar solo export sin generar salida hacia el archivo. Si tu variable no persiste, revisa que efectivamente se haya escrito en .bashrc o .zshrc.
¿Qué variables de entorno conviene conocer primero?
Algunas variables aparecen en casi cualquier sistema y vale la pena tenerlas en el radar:
SHELL: ruta del intérprete activo.PWD: directorio de trabajo actual.PATH: lista de rutas donde se buscan los binarios.LANGUAGE: idioma y codificación, como UTF-8.USER: nombre del usuario que ejecuta la sesión.
Las variables de entorno funcionan de forma global dentro del sistema y son tu mejor aliado para consultar valores de referencia: dónde estás parado, qué shell usas, qué idioma tiene el teclado o quién está logueado.
Ejecuta env en tu terminal y cuéntame en los comentarios cuál variable te llamó más la atención y qué descubriste al revisar su valor.