Argument- und Kommando-Trennzeichen
Sonderzeichen | Bedeutung |
Leerzeichen | Argument-Trenner, abhängig vom Inhalt der Variablen IFS |
Neue-Zeile-Zeichen | Kommando-Abschluss |
| Pipe-Zeichen |
| Kommando-Abschluss |
| Kommando-Abschluss; das so abgeschlossene Kommando wird im |
| ORIF; das nachfolgende Kommando wird nur ausgeführt, wenn das |
| ANDIF; das nachfolgende Kommando wird nur ausgeführt, wenn das |
Kommandos klammern
Sonderzeichen | Bedeutung |
(kommando_folge) | kommando_folge in einer Subshell ausführen |
{ kommando_folge;} | Ausgaben aller Kommandos aus kommando_folge |
Kommando ausführen und durch Ausgabe ersetzen
Sonderzeichen | Bedeutung |
`kommando` | durch die Ausgabe von kommando ersetzen |
$(kommando) | durch die Ausgabe von kommando ersetzen |
Argumente durch passende Dateinamen ersetzen
Sonderzeichen | Bedeutung |
* | Als eigenständiges Muster: Als Bestandteil eines Musters: |
? | Als eigenständiges Muster: Als Bestandteil eines Musters: |
[s] | wird ersetzt durch genau eines der Zeichen, die in der Zeichenkette s enthalten |
[c1-c2] | wird ersetzt durch genau ein Zeichen aus dem Bereich von c1 bis c2 (Grenzen |
[!s] | wird ersetzt durch genau eines der Zeichen, die nicht in der Zeichenkette s |
[!c1-c2] | wird ersetzt durch genau ein Zeichen, das nicht im Bereich von c1 bis c2 liegt, |
Standard-Ausgabe umlenken
Sonderzeichen | Bedeutung |
[n]> datei | Standard-Ausgabe [oder Filedeskriptor n] auf datei umlenken; alter Inhalt wird |
[n]>> datei | Standard-Ausgabe [oder Filedeskriptor n] auf datei umlenken; alter Inhalt bleibt |
[n]> &zahl | Standard-Ausgabe [oder Filedeskriptor n] auf die Datei umlenken, der die |
[n]> &- | Standard-Ausgabe [oder Filedeskriptor n] schließen |
Standard-Eingabe umlenken
Sonderzeichen | Bedeutung |
[n] <datei | Standard-Eingabe [oder Filedeskriptor n] auf datei umlenken |
[n] <<argument | Here-Dokument einleiten oder auf Filedeskriptor n umlenken |
[n] <<-argument | Here-Dokument einleiten oder auf Filedeskriptor n umlenken; führende |
[n] <&zahl | Standard-Eingabe auf die Datei oder auf Filedeskriptor n umlenken, der die |
[n] <&- | Standard-Eingabe oder Filedeskriptor n schließen |
[n] <>datei | datei [oder Filedeskriptor n] wird zum Lesen und Schreiben als Standard-Eingabe |
Shell-Variablen und -Parameter
Sonderzeichen | Bedeutung |
name=wert | der Variablen name einen Wert zuweisen |
$name | Wert der Variablen name; Schlüsselwort-Parameter |
${name} | wie $name; die geschweiften Klammern grenzen den Variablennamen |
${name-standard_wert} | Ersetzung durch standard_wert, falls Variable name nicht definiert |
${name=standard_wert} | Zuweisung von standard_wert, falls Variable name nicht definiert |
${name?standard_wert} | Shell bricht Ausführung ab mit der Fehlermeldung |
${name+standard_wert} | Ersetzung durch die leere Zeichenkette, falls name nicht definiert |
${name:-standard_wert} | Ersetzung durch standard_wert, falls Variable name nicht definiert |
${name:=standard_wert} | Zuweisung von standard_wert, falls Variable name nicht definiert oder |
${name:?standard_wert} | Shell bricht Ausführung ab mit der Fehlermeldung |
${name:+standard_wert} | Ersetzung durch die leere Zeichenkette, falls name nicht definiert |
${#name} | Ersetzung durch die Länge der Zeichenkette, die name bildet. Ist |
${name%muster} | Passt das POSIX-Shell-Muster muster auf das Ende des Wertes von |
${name%%muster} | Passt das POSIX-Shell-Muster muster auf das Ende des Wertes von |
${name#muster} | Sollte das POSIX-Shell-Muster muster auf den Anfang des Wertes |
${name##muster} | Sollte das POSIX-Shell-Muster muster auf den Anfang des Wertes |
$0 | 1. Argument des Aufrufs, also Name des Kommandos, |
$1, $2, ... , $9 | Stellungsparameter |
$* | alle Aufruf-Argumente |
$@ | alle Aufruf-Argumente |
$# | Anzahl Aufruf-Argumente, also ohne $0 |
$$ | Prozessnummer (PID) der aktuellen Shell |
$! | Prozessnummer (PID) des zuletzt im Hintergrund gestarteten |
$? | Ende-Status des zuletzt ausgeführten Kommandos, das nicht im |
$- | alle in der aktuellen Shell gesetzten Optionen |
Shell-Funktionen
Sonderzeichen | Bedeutung |
name() { kommando_folge;} | Shell-Funktion; bei Aufruf von name werden |
Sonderzeichen entwerten
Sonderzeichen | Bedeutung |
\ '...' "..." | entwertet das nachfolgende Sonderzeichen entwertet alle Sonderzeichen; ein einziges Argument entwertet nicht die Sonderzeichen $ ` ...` \ |
Sonstiges
Sonderzeichen | Bedeutung |
# ;; | Kommentar-Zeichen in Shell-Prozeduren Abschluss für Kommandofolgen innerhalb einer case-Anweisung |
~ | Tildeersetzung |
(( )) | Arithmetische Berechnungen |
[[ ]] | Bedingte Ausdrücke |