![]() ![]() ![]() |
![]() ![]() |
Die Frage: "Was ist Programmieren?" lässt sich in zwei Worten beantworten: "Werte manipulieren". Die Bash stellt wieder einmal komplexe Mechanismen bereit, um den Inhalt von Zeichenketten zu bearbeiten.
Substitution | Wirkung (Beispiel) | |
${var:-default}
|
Ist
1 ist eine spezielle Shell-Variable. |
|
${var:=default}
|
Wie oben, der Inhalt von var wird auf default
gesetzt, wenn diese leer war.
|
|
${var:+neu}
|
Ist var leer, bleibt die Variable unverändert,
ansonsten wird die Variable mit neu belegt und der
Wert zurückgeliefert.
|
|
${var:?error}
|
Ist Beispiel Ein Shellprogramm soll herausfinden, an welchem Terminal ein bestimmter Nutzer angemeldet ist. Dazu muss dem Shellskript die Nutzerkennung als Argument übergeben werden. Das Shellprogramm terminiert mit einer Fehlermeldung, wenn das Argument fehlt:
|
|
${#var}
|
Liefert die Anzahl der Zeichen in var .
|
|
${var#muster}
|
Mustervergleich, beginnend am Anfang der Variablen. Wird das Muster gefunden, wird der Inhalt der Variablen ab dem ersten Zeichen nach dem ersten gefundenen Muster zurückgegeben. Ist das Muster nicht enthalten, wird der Inhalt der Variablen geliefert. Beispiel
|
|
${var%muster}
|
Wie oben, der Vergleich beginnt am Ende der Variablen. Geliefert wird, falls das Muster enthalten ist, alles vom Beginn des Variableninhaltes bis zum ersten Zeichen vor dem Muster. Beispiel
|
|
${var##muster} ${var%%muster} |
Die beiden zuletzt genannten Mechanismen substituieren jeweils das erste auftretende Muster. Es lässt sich ebenfalls das längstmögliche Muster eliminieren:
|
![]() ![]() ![]() |
![]() ![]() |