Introducción
En el mundo de Linux y los sistemas tipo Unix, las variables de entorno son pares clave‑valor que influyen en el comportamiento de los procesos y de la propia shell. Definirlas correctamente permite configurar rutas de ejecución, opciones de programas y ajustes del sistema sin modificar el código fuente. El comando export es la herramienta más utilizada para hacer que una variable esté disponible en el entorno actual y en los subprocesos que se lancen a partir de ella.
¿Qué es una variable de entorno?
Una variable de entorno es simplemente un nombre asociado a un valor que el kernel y los programas pueden consultar. Ejemplos comunes son HOME, PATH, LANG o EDITOR. Cuando un proceso se inicia, hereda el entorno de su proceso padre; cualquier cambio que se haga en ese entorno solo afecta al proceso actual y a sus hijos, nunca al padre.
El comando export: sintaxis básica
La forma más simple de usar export es:
export NOMBRE=valor
Si el valor contiene espacios o caracteres especiales, se debe encerrar entre comillas:
export MI_VAR='texto con espacios'
También es posible exportar varias variables a la vez:
export VAR1=val1 VAR2=val2
Para ver el contenido de una variable después de exportarla, basta con usar echo $NOMBRE o printenv NOMBRE.
Ejemplos prácticos
- Definir un directorio de trabajo temporal:
export TMPWORK=$HOME/tmpwork - Agregar un directorio al PATH:
export PATH=$PATH:/opt/miapp/bin - Establecer el locale para que los mensajes aparezcan en español:
export LANG=es_ES.UTF-8 - Pasar una variable a un subproceso:
export MI_TOKEN=abc123&& ./mi_script.sh
Hacer las variables permanentes
El efecto de export dura solo mientras exista la sesión de shell actual. Para que una variable esté disponible en cada nuevo inicio de sesión, se debe añadir la línea de export a uno de los archivos de configuración de la shell, como:
~/.bashrcpara Bash (se lee en shells interactivas)~/.profileo~/.bash_profilepara shells de inicio de sesión~/.zshrcpara Zsh
Después de editar el archivo, se recarga con source ~/.bashrc o simplemente abriendo una nueva terminal.
Buenas prácticas y trucos
- Usar nombres en mayúsculas y guiones bajos para evitar colisiones con comandos internos.
- No exportar datos sensibles (como contraseñas) en archivos que puedan ser leídos por otros usuarios; prefiera gestores de secretos o variables de sesión.
- Si necesita modificar
PATH, añada el nuevo directorio al final o al principio según la prioridad que desee. - Para variables que solo son relevantes en un script concreto, es mejor definirlas dentro del script mismo con
exporto simplemente usarVAR=valor comandopara que afecte solo a ese comando. - Utilice
export -ppara listar todas las variables actualmente exportadas. - Recuerde que las variables exportadas no se persisten en reinicios del sistema unless se guardan en los archivos de inicio mencionados anteriormente.
Conclusión
El comando export es una pieza fundamental para cualquier usuario o administrador de Linux que necesite controlar el entorno de ejecución de sus programas. Dominar su sintaxis, saber cuándo y cómo hacerlo permanente, y aplicar buenas prácticas le permitirá trabajar de forma más segura, predecible y eficiente en la línea de comandos.


