Shell-Variablen
Zur Navigation springen
Zur Suche springen
Shell-Variablen
Skalare Variablen
- Eine skalare Variable speichert genau einen einzelnen Wert, z. B. eine Zahl, Zeichenkette oder einen Pfad.
- Sie ist nur innerhalb der aktuellen Shell-Sitzung gültig und geht beim Beenden verloren.
- Skalare Variablen sind die Grundlage aller weiteren Variablentypen in der Bash.
- Definition
- NAME="Thomas"
- ORT="Zweibrücken"
- echo $NAME lebt in $ORT
Thomas lebt in Zweibrücken
- Eigenschaften
- Variablennamen bestehen aus Buchstaben, Ziffern und Unterstrichen – sie dürfen nicht mit einer Zahl beginnen.
- Zwischen Variablenname, Gleichheitszeichen und Wert dürfen keine Leerzeichen stehen.
- Eine Variable kann mit unset gelöscht werden.
- Beispiel
- ZAHL=5
- echo $ZAHL
5
- unset ZAHL
- echo $ZAHL
(keine Ausgabe – Variable gelöscht)
- Variablen anzeigen
- Mit set werden alle aktuell gesetzten Variablen ausgegeben.
- Mit declare -p NAME kann eine einzelne Variable mit Typ und Wert angezeigt werden.
Array-Variablen
- Arrays sind Variablen, die mehrere Werte unter einem gemeinsamen Namen speichern.
- Jeder Eintrag wird über einen numerischen Index angesprochen, beginnend mit 0.
- Beispiel
- farbe=(blau gelb gruen rot)
- echo ${farbe[0]} → blau
- echo ${farbe[2]} → gruen
- echo ${farbe[@]} → blau gelb gruen rot
- Einzelne Werte hinzufügen
- farbe[4]="violett"
- echo ${farbe[4]} → violett
- Länge eines Arrays
- echo ${#farbe[@]} → 5
Assoziative Arrays
- Assoziative Arrays bestehen aus Schlüssel/Wert-Paaren.
- Sie sind ab Bash 4 verfügbar und müssen mit declare -A deklariert werden.
- Beispiel
- declare -A capital
- capital[Deutschland]="Berlin"
- capital[Frankreich]="Paris"
- capital[Italien]="Rom"
- echo ${capital[Frankreich]} → Paris
- echo ${!capital[@]} → Deutschland Frankreich Italien
Variablen prüfen
- Mit declare -p lässt sich prüfen, ob eine Variable existiert und welchen Typ sie hat.
- Mit unset kann sie gelöscht werden.
- Eine nicht gesetzte Variable ergibt bei echo $VAR eine leere Ausgabe.
- Beispiel
- declare -p farbe
- unset farbe
- echo $farbe
Aufgaben
Skalare Variablen
- Legen Sie eine Variable STADT mit einem beliebigen Wert an und geben Sie deren Inhalt aus.
- Löschen Sie die Variable mit unset und prüfen Sie die Ausgabe.
- Erstellen Sie eine Variable PFAD und zeigen Sie mit ls $PFAD deren Inhalt an.
Array-Variablen
- Erstellen Sie ein Array OBST mit den Werten Apfel, Birne und Traube.
- Geben Sie das zweite Element des Arrays aus.
- Ergänzen Sie ein viertes Element Banane und geben Sie alle Werte aus.
Assoziative Arrays
- Erstellen Sie ein assoziatives Array LAND, das Länder und ihre Hauptstädte enthält.
- Fügen Sie mindestens drei Einträge hinzu und geben Sie alle Schlüssel und Werte aus.
- Löschen Sie einen Eintrag mit unset.