Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung Nächste Überarbeitung Beide Seiten, nächste Überarbeitung | ||
admin_grundlagen:shell_sonderzeichen [2014/06/15 12:02] carsten_strotmann |
admin_grundlagen:shell_sonderzeichen [2020/12/04 13:12] holger_jakobs [die wichtigsten Shell Sonderzeichen] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Die wichtigsten Shell Sonderzeichen ===== | ||
+ | |||
<file> | <file> | ||
~ - steht für den Namen des Heimatverzeichnisses | ~ - steht für den Namen des Heimatverzeichnisses | ||
- | $ - Variablen | + | $ - leitet einen Variablennamen ein |
- | * - Wildcart - Platzhalter für mehrere beliebige Zeichen | + | * - Wildcard - Platzhalter für 0 oder mehr beliebige Zeichen |
- | ? - genau ein gesuchtes Zeichen | + | ? - Wildcard - Platzhalter für genau ein beliebiges Zeichen |
- | [a-z] - steht für Platzhalter für Zeichen/Zeichenketten etc. | + | [a-z] - steht als Platzhalter für genau ein Zeichen aus der eckigen Klammer |
- | [^a-z] - steht für Platzhalter für Zeichen/Zeichenketten die nicht angegeben sind | + | [[:lower:]] - Zeichenklasse für Kleinbuchstaben, nicht von der Spracheinstellung abhängig, umfasst (bei korrekter Implentation) auch Buchstaben nicht-lateinischer Alphabete |
- | \ - entwertet das letzte Zeichen | + | [^a-z] - steht als Platzhalter für genau ein Zeichen, das nicht in der eckigen Klammer angegeben ist (alles außer ...) |
- | ' | + | \ - entwertet das darauffolgende Zeichen, beraubt es also seiner Sonderbedeutung. |
- | " | + | '...' - In Hochkommas stehende Zeichenketten werden von der Shell gar nicht interpretiert. |
- | | zwei Befehle verbinden | + | "..." - Bei in Anführungsstrichen stehenden Zeichenketten führt die Shell kein Matching auf Dateinamen durch, und die Zerlegung in Wörter findet ebenfalls nicht statt. |
+ | | zwei Befehle mittels einer Pipe verbinden | ||
< aus Datei einlesen | < aus Datei einlesen | ||
- | > in Datei schreiben | + | > in Datei schreiben (diese wird überschrieben, falls bereits vorhanden) |
>> an Datei anhängen | >> an Datei anhängen | ||
</file> | </file> | ||
+ | |||
+ | ====== wie schütze ich mich vor Sonderzeichen (z.B. in Dateinamen) ===== | ||
+ | * <file>'</file> | ||
+ | * <file>"</file> | ||
+ | * <file>\</file> | ||
+ | * <file>--</file> | ||
+ | |||
+ | '--' bedeutet __Ende aller Optionen__ | ||
+ | touch -- -l | ||
+ | cp -a -v -- -l -a | ||
+ | rm -- -l -a |