unset

Aus Foxwiki
Version vom 21. September 2024, 22:29 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „Bash/Built-in“ durch „Bash/Builtins“)

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