GNU/Linux >> Znalost Linux >  >> Linux

Proměnná exportu Bash

Úvod

Proměnné shellu jsou páry klíč–hodnota používané k ukládání důležitých konfiguračních dat pro shell. Vzhledem k tomu, že proměnná je pouze ukazatel na část dat, může obsahovat odkaz na jakýkoli datový typ - jméno, číslo, název souboru nebo dokonce jinou proměnnou.

Všechny proměnné, které uživatel definuje uvnitř bash shellu, jsou ve výchozím nastavení lokální. To znamená, že podřízené procesy shellu nedědí proměnné shellu. Uživatel musí exportovat proměnné, aby je zpřístupnil podřízeným procesům.

Tento tutoriál vám ukáže, jak exportovat proměnné Bash v Linuxu pomocí export příkaz.

Předpoklady

  • Přístup k terminálu/příkazovému řádku.
  • Skořápka bash.

Co dělá příkaz export v Bash?

Proměnné v Bash se vytvářejí pomocí příkazu deklarovat nebo jednoduše zadáním páru klíč-hodnota do shellu. Chcete-li například vytvořit proměnnou s názvem test , který má hodnotu řetězce example , zadejte:

test="example"

Chcete-li zobrazit hodnotu proměnné, použijte příkaz echo:

echo $test

Hodnota se objeví ve výstupu:

Takto vytvořená proměnná se však vztahuje pouze na aktuální shellovou relaci. Chcete-li to vyzkoušet, otevřete podřízený shell zadáním:

bash

Použijte echo pro kontrolu proměnné.

echo $test

Výstup je prázdný, protože proměnná test má hodnotu pouze v nadřazeném shellu. Aby mohla být proměnná použita v podřízených procesech, musí být exportována.

Export proměnných je také důležitý pro skriptování v Bash. Níže uvedený příklad vytvoří skript s názvem test-script.sh který zobrazuje hodnotu test variabilní.

1. Vytvořte soubor pomocí textového editoru, jako je nano:

nano test-script.sh

2. Do souboru zadejte následující:

#!/bin/bash
echo $test

3. Uložte soubor a ukončete.

4. Změňte oprávnění souboru, aby bylo možné jej spustit:

chmod u+x test-script.sh

5. Spusťte skript:

./test-script.sh

Skript vrací prázdný výstup.

Výstup je prázdný, protože skript je spuštěn v podřízeném prostředí, které se automaticky otevře při spuštění skriptu.

Jak exportovat proměnnou Bash

Syntaxe pro export příkaz je jednoduchý:

export [variable-name]

Níže uvedený příklad potvrzuje, že test proměnná existuje i po použití bash pro zahájení nové shellové relace.

Skripty mají nyní také přístup k proměnné. Spusťte znovu dříve vytvořený skript.

./test-script.sh

Nyní správně zobrazuje hodnotu test .

Export funkcí

Použijte export příkaz pro export funkcí bash.

1. Vytvořte například bash funkci s názvem echoVar :

function echoVar 

2. Funkce volá echo zobrazíte hodnotu test proměnná:

{
echo "The value of the test variable is: "$test
}

3. Funkci lze nyní volat jejím jménem, ​​aby se zobrazila hodnota proměnné. Chcete-li funkci zpřístupnit v podřízených procesech, zadejte:

export -f echoVar

Funkce je nyní dostupná v podřízených shellech.

Zobrazení všech exportovaných proměnných

Při export příkaz je vydán bez argumentů, zobrazí seznam všech proměnných. Chcete-li exportovat všechny uvedené proměnné do podřízených procesů, použijte -p možnost.

export -p

Dvě proměnné vytvořené v tomto článku jsou ve spodní části výstupu.

Chcete-li vrátit zpět efekt export -p , použijte -n možnost.

export -n

Proměnné jsou opět omezeny na aktuální relaci shellu.


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

  2. Alias ​​s proměnnou v bash

  3. Zkontrolujte, zda existuje proměnná v seznamu v Bash

  1. příkaz pro export bash

  2. předání grepu do proměnné v bash

  3. Jak trvale exportovat proměnnou v Linuxu?

  1. Bash skriptování (I)

  2. Bash Dynamické (proměnné) názvy proměnných?

  3. Proč je nastavení proměnné před příkazem v Bash legální?