Einfache Shellsonderzeichen: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
Zeile 75: Zeile 75:
 
** '''echo $USER'''
 
** '''echo $USER'''
 
** '''echo "$USER"'''
 
** '''echo "$USER"'''
** '''echo '$USER'''   
+
** '''echo '$USER' '''   
 
** '''echo \$USER'''
 
** '''echo \$USER'''
 
** Was stellen Sie fest?
 
** Was stellen Sie fest?

Aktuelle Version vom 12. November 2025, 11:14 Uhr

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