GNU/Linux >> Znalost Linux >  >> Linux

Definování proměnné s exportem nebo bez exportu

Pro ilustraci toho, co říkají ostatní odpovědi:

$ 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 zpřístupní proměnnou dílčím procesům.

To znamená,

export name=value

znamená, že název proměnné je dostupný jakémukoli procesu spustíte z tohoto procesu shellu. Pokud chcete, aby proces používal tuto proměnnou, použijte export a spusťte proces z tohoto shellu.

name=value

znamená, že rozsah proměnné je omezen na shell a není dostupný žádnému jinému procesu. Toto byste použili pro (řekněme) proměnné smyčky, dočasné proměnné atd.

Je důležité si uvědomit, že export proměnné ji nezpřístupní nadřazeným procesům. To znamená, že zadáním a exportem proměnné v vytvořeném procesu nebude dostupná v procesu, který ji spustil.


Linux
  1. Spusťte proces s výstupem v reálném čase v PHP

  2. Alias ​​s proměnnou v bash

  3. Jak trvale exportovat proměnnou v Linuxu?

  1. Shell skript změní adresář s proměnnou

  2. variabilní dostupnost prostředí v Linuxu

  3. Aktuální umask procesu s <pid>

  1. Připojit k proměnné podobné cestě bez vytvoření úvodního dvojtečky, pokud není nastaveno?

  2. Čas zahájení procesu s časovým pásmem?

  3. Jak používat export s Pythonem na Linuxu