Unset: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
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<br>
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 11: Zeile 11:
   
   
  #
  #
*Im  ersten  Schritt  wurde  der  Variablen  ''x''  der  Wert  ''5000'' zugewiesen<br>
*Anschließend wurde die Variable mit dem <code>echo</code>-Kommando ausgegeben<br>
*In der vierten Zeile wird mit dem Kommando <code>bash</code> eine Subshell gestartet<br>
*Der Versuch, die Variable mit dem <code>echo</code>-Befehl auszugeben, schlägt fehl, weil keine Vererbung der Variablen in die Subshell stattgefunden hat<br>


*Wenn  der  Inhalt  einer  Variablen  in  einer  Subshell  benötigt  wird,  muss  die  Variable exportiert werden. Beispiel:
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
 
; Beispiel
  # Name=Hans
  # Name=Hans
  # echo $Name
  # echo $Name
Zeile 24: Zeile 27:
  # echo $Name
  # echo $Name
  Hans
  Hans
*Diesmal  wurde  die  Variable  ''Name'' mit  dem  Kommando  <code>export</code> exportiert,  bevor  die Subshell gestartet wurde<br>
 
*Wie der zweite <code>echo</code>-Befehl zeigt, steht die Variable danach in der Subshell zur Verfügung<br>
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 32: Zeile 36:
  # echo $Name
  # echo $Name
  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>
 
*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


Zeile 39: Zeile 44:
[[Kategorie:Bash/Built-in]]
[[Kategorie:Bash/Built-in]]
[[Kategorie:Bash/Variablen]]
[[Kategorie:Bash/Variablen]]
{{SORTIERUNG:unset}}
{{DISPLAYTITLE:unset}}

Version vom 8. August 2024, 13:28 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

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