GNU/Linux >> Linux Esercitazione >  >> Linux

Definizione di una variabile con o senza esportazione

Per illustrare cosa dicono le altre risposte:

$ 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 rende la variabile disponibile ai sottoprocessi.

Cioè,

export name=value

significa che il nome della variabile è disponibile per qualsiasi processo corri da quel processo di shell. Se vuoi che un processo faccia uso di questa variabile, usa export , ed esegui il processo da quella shell.

name=value

significa che l'ambito della variabile è limitato alla shell e non è disponibile per nessun altro processo. Lo useresti per (diciamo) variabili di ciclo, variabili temporanee ecc.

È importante notare che l'esportazione di una variabile non la rende disponibile ai processi padre. Cioè, specificando ed esportando una variabile in un processo generato non la rende disponibile nel processo che l'ha avviata.


Linux
  1. Aggiungi a una variabile simile a un percorso senza creare due punti iniziali se non impostato?

  2. Ora di inizio del processo con fuso orario?

  3. Esegui il comando senza tenerlo nella cronologia

  4. Come esportare permanentemente una variabile in Linux?

  5. timeout senza uccidere il processo in bash

Comando Wait in Linux spiegato con esempi

Comando di esportazione Linux con esempi

Differenza tra la definizione di variabili Bash con e senza esportazione

Decluttering la gestione dei processi con ps o systemd

Esporta database con cPanel

Spiegazione del comando di esportazione in Linux