Unset: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „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 zu…“ |
K Textersetzung - „Bash/Builtins“ durch „Bash/Builtin“ |
||
(19 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
'''unset''' - Kurzbeschreibung | |||
== Beschreibung == | |||
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: | *Variablen, die auf diese Art Werte erhalten, werden aber nicht automatisch in Subshells exportiert, wie die folgende Befehlsfolge demonstriert: | ||
# x=5000 | # x=5000 | ||
Zeile 10: | Zeile 11: | ||
# | # | ||
*Wenn der Inhalt einer Variablen in einer Subshell benötigt wird, muss die Variable exportiert werden | Im ersten Schritt wurde der Variablen ''x'' der Wert ''5000'' zugewiesen | ||
*Anschließend wurde die Variable mit dem <code>echo</code>-Kommando ausgegeben | |||
*In der vierten Zeile wird mit dem Kommando <code>bash</code> eine Subshell gestartet | |||
*Der Versuch, die Variable mit dem <code>echo</code>-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 | |||
== Anwendung == | |||
# Name=Hans | # Name=Hans | ||
# echo $Name | # echo $Name | ||
Zeile 23: | Zeile 27: | ||
# echo $Name | # echo $Name | ||
Hans | Hans | ||
*Wie der zweite <code>echo</code>-Befehl zeigt, steht die Variable danach in der Subshell zur Verfügung | Diesmal wurde die Variable ''Name'' mit dem Kommando <code>export</code> exportiert, bevor die Subshell gestartet wurde | ||
*Wie der zweite <code>echo</code>-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: | *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: | ||
Zeile 31: | Zeile 36: | ||
# echo $Name | # echo $Name | ||
Willi | Willi | ||
*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: | Wenn Sie den Inhalt einer Variablen nicht mehr benötigen, sollten Sie diese mit dem Kommando <code>unset</code> wieder zurücksetzen.<br> | ||
* 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 | # unset Name | ||
[[Kategorie:Bash/Scripting]] | |||
[[Kategorie:Bash/Builtin]] | |||
[[Kategorie:Bash/Variablen]] | |||
{{SORTIERUNG:unset}} | |||
{{DISPLAYTITLE:unset}} |
Aktuelle Version vom 21. September 2024, 22:44 Uhr
unset - Kurzbeschreibung
Beschreibung
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
Anwendung
# 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