Exportar es el comando incorporado del shell bash, cuando las variables ambientales se crean en el shell bash, no heredan los cambios de su shell principal, lo que significa que cuando se abra el nuevo shell, los valores del shell principal no serán exportado al nuevo shell secundario. Para exportar los valores de las variables ambientales en el shell secundario, usamos el comando de exportación para exportar estos valores a los procesos secundarios.
En este seguimiento, explicaremos la utilización del comando de exportación en Linux.
¿Qué es el comando de exportación en Linux
El comando de exportación se usa para marcar las variables ambientales para que puedan exportarse a los shells secundarios. La sintaxis general del uso del comando de exportación:
$ export [options] [variable-name]
Podemos usar dos argumentos con el comando de exportación; uno puede ser cualquier opción (discutiremos estas opciones más adelante) y el nombre de la variable que se marcará para exportar en el shell secundario.
Con mayor frecuencia, las siguientes opciones se utilizan con el comando de exportación:
Opciones | Explicación |
-p | Muestra las variables exportadas del shell actual |
-n | Se utiliza para eliminar la variable de la lista de variables exportadas |
-f | Se utiliza para exportar las funciones del shell principal al secundario |
Para comprender el uso del comando de exportación, consideraremos primero el ejemplo del nivel básico. Declararemos una variable "myVariable" y almacenaremos una cadena de "LinuxFoss" usando el comando:
$ myVariable=LinuxFoss

Para mostrar el valor almacenado de "myVariable", use el comando echo:
$ echo $myVariable

Se ha mostrado el valor "Linux Foss", abra el shell secundario ejecutando el comando bash:
$ bash

Se ha abierto el nuevo shell bash, imprima el valor de "myVariable" creado en el shell principal:
$ echo $myVariable

No se ha mostrado nada en la salida porque "myVariable" creada en el shell principal no se exporta al shell secundario, por lo que saldremos del shell secundario:
$ exit

Una vez que estemos en el shell principal, exportaremos "myVariable" a los shells secundarios usando el comando de exportación:
$ export myVariable

Nuevamente, abra el shell secundario:
$ bash

Imprime el valor de “myVariable” usando el comando echo:
$ echo $myVariable

De esta forma, podemos marcar las variables ambientales y exportarlas a los shells o shells hijos recién creados. Ahora, si queremos mostrar las variables de exportación del shell actual, podemos usar el indicador "-p":
$ export -p

Podemos ver en el último de la lista el nombre de “myVariable” que exportamos en los comandos anteriores:

Y si queremos eliminar “myVariable” de las listas de variables de exportación, podemos usar la opción “-n”:
$ export -n myVariable

Si volvemos a mostrar la lista de variables de exportación del shell actual usando el indicador "-p":
$ export -p

No veremos el nombre de “myVariable” en toda la lista:

El nombre se eliminó, de manera similar, podemos crear una función, myVariable() en el shell principal y almacenar algún valor en ella:
$ myVariable() { echo “HELLO! Its LinuxFoss”; }

Para exportar esta función al shell secundario, usaremos el indicador "-f"; de lo contrario, lo considerará un nombre de la variable, no una función:
$ export -f myVariable

Abra el nuevo shell usando el comando "bash" e imprima el valor de myVariable():
$ myVariable

Si el comando "exportar" se ejecuta sin usar ninguna opción, mostrará la lista de todas las variables y funciones exportadas:
$ export

El comando de exportación también se usa para configurar el editor vim como editor predeterminado de Linux, para configurar el editor Vim como su editor predeterminado usando el comando de exportación:
$ export EDITOR=/usr/bin/vim

Para verificar que el editor vim se haya configurado como el editor predeterminado, use el comando grep:
$ export | grep EDITOR

Conclusión
El comando de exportación es uno de los comandos incorporados del shell bash que se utiliza para exportar las variables de entorno del shell principal al shell secundario recién creado. En este seguimiento, se explica el comando de exportación con su utilización en Linux con la ayuda de algunos ejemplos. También explicamos las opciones utilizadas junto con el comando de exportación.