Comando integrado de exportación Bash

comando de exportación

En Tipo Unix sistemas operativos, exportar es un comando incorporado del Intento cáscara. Designa especificado variables y funciones para pasar a procesos secundarios.

Descripción

Normalmente, cuando ejecuta un comando en el indicador de bash, se crea un proceso dedicado con su propio entorno, exclusivamente para ejecutar su comando. Las variables y funciones que definió antes de ejecutar el comando no se comparten con nuevos procesos, a menos que las marque explícitamente con exportar .



Sintaxis

|_+_| |_+_|

Opciones

La exportar El comando incorporado tiene las siguientes opciones:

-F La -F La opción debe usarse si la nombres consulte las funciones. Si -F no se usa, exportar asumirá el nombres son variables.
-norte Variables nombradas (o funciones, con -F ) ya no se exportarán. Equivalente a usar el comando declare +x nombre .
-pag Muestra una lista de todas las variables y funciones marcadas para exportar.

Ejemplos de

La siguiente serie de comandos ilustrará cómo se pasan las variables a un proceso hijo en bash, con y sin exportar . Primero, establezca el valor de una nueva variable llamada myvar :

|_+_|

Verifique que esté configurado y que tenga un valor en el contexto de shell actual:



|_+_| |_+_|

Cree un nuevo contexto de shell ejecutando intento en el símbolo del sistema de bash:

|_+_|

Ahora tiene un nuevo shell bash, que se ejecuta dentro de su sesión bash original. La variable myvar no tiene ningún valor en este contexto, porque no se pasó del shell original:

cuántos bits tiene mi computadora
|_+_|

(Solo un nueva línea está impreso, porque myvar no tiene valor.)



Ahora, Salida este shell, que le devuelve la sesión de bash original:

|_+_|

Aquí, myvar todavía tiene un valor:

|_+_| |_+_|

Ahora, inicie una nueva sesión de bash de nuevo, pero esta vez, exportar la variable primero:

|_+_| |_+_|

Esta vez, el valor de myvar se pasa al nuevo shell:

|_+_| |_+_|

Estupendo. Salga de la subcapa:

|_+_|

Ahora verifiquemos que también funciona con funciones.

¿Por qué suena mi computadora?

Crea una nueva función de shell, myfunc . Puede definir una función de shell bash colocando paréntesis después del nombre de la función, y luego un comando compuesto . Un comando compuesto puede tomar diferentes formas; aquí, lo encerraremos en llaves , con un punto y coma después de cada comando, incluido el último:

|_+_|

Ahora myfunc es un nombre de comando que puede ejecutar en el shell actual:

que chipset tengo
|_+_| |_+_|

Para pasar esta función a cualquier proceso hijo, use exportar -f :

|_+_|

Puede verificar que se pasa iniciando bash en un proceso hijo y ejecutando myfunc :

|_+_| |_+_| |_+_|

Esperamos que estos ejemplos le ayuden a comprender mejor cómo exportar es útil y le brinda una mejor comprensión de cómo bash crea nuevos procesos.

No olvide que siempre puede verificar qué variables y funciones se exportarán a procesos secundarios ejecutando exportar -p :

|_+_| |_+_|

declare - Establecer o ver los valores y atributos de las variables y funciones de bash.
ejecutivo - Destruya el shell actual y reemplácelo con un nuevo proceso.