Variables de entorno en Bash: guía práctica con ejemplos

DUGLAS MORENODUGLAS MORENO 👁 21

¿Qué son las variables de entorno?

Las variables de entorno son pares nombre=valor que viven en el entorno del proceso y que pueden ser leídas por programas y scripts. Sirven para configurar el comportamiento de aplicaciones sin modificar su código, por ejemplo definir rutas, credenciales o modos de depuración.

Visualizar una variable con echo $VAR

Para ver el valor de una variable ya existente usás la expansión de parámetros precedida por el signo de dólar. Si la variable no está definida, la expansión devuelve una cadena vacía.

$ echo $HOME
/home/tu_usuario
$ echo $NO_EXISTE

En el primer comando se muestra el directorio personal; en el segundo, como NO_EXISTE no está definida, la salida es simplemente una línea en blanco.

Establecer una variable de forma temporal

Podés asignar un valor a una variable solo para el shell actual. Esta asignación no afecta a procesos hijos ni queda guardada después de cerrar la terminal.

$ MI_VAR=hola
$ echo $MI_VAR
hola

Después de esto, si lanzás un subshell (por ejemplo con bash o sh -c), la variable no estará disponible:

$ bash -c 'echo $MI_VAR'

La salida es una línea en blanco porque la variable no fue exportada.

Exportar para que quede disponible en subshells

Con el builtin export le indicás al shell que pase la variable al entorno de los procesos que lance.

$ export MI_VAR
$ bash -c 'echo $MI_VAR'
hola

Ahora el subshell muestra hola. Podés combinar asignación y export en una sola línea:

$ export OTRA_VAR=valor
$ echo $OTRA_VAR
valor
$ bash -c 'echo $OTRA_VAR'
valor

Variables de entorno permanentes (opcional)

Si querés que una variable quede definida cada vez que abrís una terminal, agregá la línea de export a tu archivo de inicialización del shell, por ejemplo ~/.bashrc o ~/.zshrc.

# al final de ~/.bashrc
export MI_VAR=hola

Después de guardar, recargá el archivo con source ~/.bashrc o abrís una nueva terminal para que la variable esté disponible.

Buenas prácticas

  • Usá nombres en mayúsculas con guiones bajos (MI_VARIABLE).
  • No exportés variables que contengan información sensible sin tener en cuenta que cualquier proceso hijo puede leerlas.
  • Para variables que solo necesitás en el script actual, dejálas sin exportar; así evitás contaminar el entorno de otros programas.

Resumen rápido de comandos

Acción Comando Resultado esperado
Ver variable echo $VAR Valor o línea en blanco
Asignar temporal VAR=valor Variable disponible en shell actual
Exportar export VAR Variable disponible en subshells
Asignar y exportar export VAR=valor Igual que arriba, en un paso
Hacer permanente agregar export VAR=valor a ~/.bashrc Variable en cada nueva sesión

Con estos pasos podés manejar las variables de entorno de forma segura y eficaz en tu día a día con Bash o cualquier shell compatible.

Comentarios (0)

Sé el primero en comentar.

Dejá tu comentario