Einfache Shellsonderzeichen
Version vom 12. November 2025, 11:14 Uhr von Thomas.will (Diskussion | Beiträge) (→Aufgabe 1 – Sonderzeichen im Einsatz)
Was ist das?
- Shellsonderzeichen sind spezielle Zeichen, die in der Bash-Shell eine besondere Bedeutung haben und verwendet werden, um bestimmte Aktionen oder Funktionen auszuführen.
- Ein Beispiel für ein Shellsonderzeichen ist das Dollarzeichen $, das verwendet wird, um auf den Wert einer Variablen zuzugreifen oder Befehlsersetzung durchzuführen.
- Ein weiteres Shellsonderzeichen sind die Anführungszeichen ('", '''''), die verwendet werden, um Zeichenketten zu definieren und festzulegen, welche Teile als Text oder Variableninterpretation behandelt werden sollen.
- Das Pipe-Symbol | wird verwendet, um die Ausgabe eines Befehls an einen anderen Befehl weiterzuleiten und so die Verarbeitung von Datenketten (Pipelines) zu ermöglichen.
- Shellsonderzeichen sind ein wesentlicher Bestandteil des Shell-Skriptings und ermöglichen es, komplexe Aufgaben durch Kombination und Manipulation von Befehlen, Variablen und Datenströmen auszuführen.
Tabelle
| Zeichen | Bedeutung |
|---|---|
| ; | Trennt Kommandos (werden nacheinander ausgeführt) |
| # | Kommentar |
| & | Programm im Hintergrund starten |
| | | STDOUT von links wird zu STDIN von rechts weitergeleitet |
| * | Steht für beliebig viele Zeichen (auch 0) |
| ? | Steht für genau ein Zeichen |
| [abc] | Steht für eines der Zeichen in [ ], hier a, b oder c |
| ~ | Das Homeverzeichnis |
| > und >> | Leitet Ausgabe in eine Datei um – > überschreibt, >> hängt an |
| < | Lesen aus Datei |
| 2>&1 | Leitet STDERR auf STDOUT um |
| << Ende | Lesen bis zur Markierung (Here-Document) |
| { , , , } | Zeichenketten oder Werte kombinieren (Brace Expansion) |
| !! | Führt den letzten Befehl erneut aus |
| !$ | Fügt das letzte Argument des letzten Befehls ein |
| "..." | Entwertet Sonderzeichen außer $, ' , \ und ! |
| '...' | Entwertet alle Sonderzeichen außer ' selbst |
| \ | Entwertet (escaped) das folgende Sonderzeichen |
| } | Schließt eine Blockstruktur (z. B. Funktion oder Codeblock) |
Aufgaben
Aufgabe 1 – Sonderzeichen im Einsatz
- Experimentieren Sie mit den folgenden Befehlen:
- echo $USER
- echo "$USER"
- echo '$USER'
- echo \$USER
- Was stellen Sie fest?
Aufgabe 2 – Jokerzeichen (Wildcards)
- Erstellen Sie Testdateien (a1.txt, a2.txt, b1.txt).
- Testen Sie die folgenden Kommandos und notieren Sie die Unterschiede:
- ls a*.txt
- ls ?.txt
- ls [ab]1.txt