Export: Unterschied zwischen den Versionen
K Textersetzung - „[[Category:“ durch „[[Kategorie:“ |
K Textersetzung - „Linux:Befehl“ durch „Linux/Befehl“ |
||
Zeile 46: | Zeile 46: | ||
[[Kategorie:Linux | [[Kategorie:Linux/Befehl]] | ||
[[Kategorie:Bash:Variablen]] | [[Kategorie:Bash:Variablen]] | ||
[[Kategorie:Bash:Builtin]] | [[Kategorie:Bash:Builtin]] | ||
[[Kategorie:Bash:Scripting]] | [[Kategorie:Bash:Scripting]] | ||
[[Kategorie:Bash:Interaktiv]] | [[Kategorie:Bash:Interaktiv]] |
Version vom 20. März 2023, 22:14 Uhr
Linux:bash:echo, export, unset
- Wenn Sie selbst eine Variable deklarieren müssen, können Sie das einfach durch Eingabe der Variablen, gefolgt von dem zuzuweisenden Wert an der Eingabeaufforderung, erledigen
- Variablen, die auf diese Art Werte erhalten, werden aber nicht automatisch in Subshells exportiert, wie die folgende Befehlsfolge demonstriert:
# x=5000 # echo $x 5000 # bash # echo $x #
- Im ersten Schritt wurde der Variablen x der Wert 5000 zugewiesen
- Anschließend wurde die Variable mit dem
echo
-Kommando ausgegeben - In der vierten Zeile wird mit dem Kommando
bash
eine Subshell gestartet - Der Versuch, die Variable mit dem
echo
-Befehl auszugeben, schlägt fehl, weil keine Vererbung der Variablen in die Subshell stattgefunden hat
- Wenn der Inhalt einer Variablen in einer Subshell benötigt wird, muss die Variable exportiert werden. Beispiel:
# Name=Hans # echo $Name Hans # export Name # bash # echo $Name Hans
- Diesmal wurde die Variable Name mit dem Kommando
export
exportiert, bevor die Subshell gestartet wurde - Wie der zweite
echo
-Befehl zeigt, steht die Variable danach in der Subshell zur Verfügung
- Es ist aber auch möglich, die Deklaration und den Export einer Variablen in einem einzigen Schritt durchzuführen. Das wird in der ersten Zeile des folgenden Beispiels demonstriert:
# export Name=Willi # bash # echo $Name Willi
- Wenn Sie den Inhalt einer Variablen nicht mehr benötigen, sollten Sie diese mit dem Kommando
unset
wieder zurücksetzen. - Es ist sinnvoll, zu Beginn eines Skripts zunächst alle verwendeten Variablen zurückzusetzen. Damit verhindern Sie, dass eventuell exportierte Variablen mit gleichen Bezeichnungen den Funktionsablauf Ihres Skripts stören. Beispiel:
# unset Name
export
- Dient zum exportieren von Variablen
- siehe Bash:Builtin:export
- mit der Option -f von Funktionen, sodass diese ab der (Shell)Prozess ihrer Definition auch in allen abgeleiteten Prozessen sichtbar sind ("globale Variablen").
- Mit der Option -n kann die export-Eigenschaft entzogen werden.
- -p listet alle exportierten Variablen und Symbole auf:
PATH=$PATH:/usr/local/bin export PATH