GNU/Linux >> Tutoriales Linux >  >> Linux

Definición de una variable con o sin exportación

Para ilustrar lo que dicen las otras respuestas:

$ foo="Hello, World"
$ echo $foo
Hello, World
$ bar="Goodbye"
$ export foo
$ bash
bash-3.2$ echo $foo
Hello, World
bash-3.2$ echo $bar

bash-3.2$ 

export hace que la variable esté disponible para los subprocesos.

Es decir,

export name=value

significa que el nombre de la variable está disponible para cualquier proceso se ejecuta desde ese proceso de shell. Si desea que un proceso haga uso de esta variable, use export y ejecute el proceso desde ese shell.

name=value

significa que el alcance de la variable está restringido al shell y no está disponible para ningún otro proceso. Usaría esto para (digamos) variables de bucle, variables temporales, etc.

Es importante tener en cuenta que exportar una variable no la pone a disposición de los procesos principales. Es decir, especificar y exportar una variable en un proceso generado no hace que esté disponible en el proceso que lo inició.


Linux
  1. ¿Agregar a la variable similar a una ruta sin crear dos puntos iniciales si no está configurado?

  2. ¿Hora de inicio del proceso con zona horaria?

  3. Ejecutar proceso con salida en tiempo real en PHP

  4. Cómo usar la exportación con Python en Linux

  5. Alias ​​con variable en bash

Comando de espera en Linux explicado con ejemplos

Comando de exportación de Linux con ejemplos

Diferencia entre la definición de variables Bash con y sin exportación

Ordenar la gestión de procesos con ps o systemd

Exportar bases de datos con cPanel

Comando de exportación en Linux explicado