Zum Inhalt springen

Unset: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „Bash/Built-in“ durch „Bash/Builtins“
K Textersetzung - „ “ durch „ “
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:


== Beschreibung ==
== 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
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
  # echo $x
  # echo $x
Zeile 12: Zeile 12:
  #
  #


Im ersten Schritt wurde der Variablen ''x'' der Wert ''5000'' zugewiesen
Im ersten Schritt wurde der Variablen ''x'' der Wert ''5000'' zugewiesen
*Anschließend wurde die Variable mit dem <code>echo</code>-Kommando ausgegeben
*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
*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
*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
Wenn der Inhalt einer Variablen in einer Subshell benötigt wird, muss die Variable exportiert werden


== Anwendung ==
== Anwendung ==
Zeile 28: Zeile 28:
  Hans
  Hans


Diesmal wurde die Variable ''Name'' mit dem Kommando <code>export</code> exportiert, bevor die Subshell gestartet wurde
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
*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:
  # export Name=Willi
  # export Name=Willi
  # bash
  # bash
Zeile 37: Zeile 37:
  Willi
  Willi


Wenn Sie den Inhalt einer Variablen nicht mehr benötigen, sollten Sie diese mit dem Kommando <code>unset</code> wieder zurücksetzen.<br>
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:
* 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/Scripting]]
[[Kategorie:Bash/Builtins]]
[[Kategorie:Bash/Builtin]]
[[Kategorie:Bash/Variablen]]
[[Kategorie:Bash/Variable]]


{{SORTIERUNG:unset}}
{{SORTIERUNG:unset}}
{{DISPLAYTITLE:unset}}
{{DISPLAYTITLE:unset}}

Aktuelle Version vom 14. Juni 2026, 00:49 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