Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
admin_grundlagen:shell_sonderzeichen [2020/12/04 13:12] holger_jakobs [die wichtigsten Shell Sonderzeichen] |
admin_grundlagen:shell_sonderzeichen [2021/11/02 22:15] |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Die wichtigsten Shell Sonderzeichen ===== | ||
- | <file> | ||
- | ~ - steht für den Namen des Heimatverzeichnisses | ||
- | $ - leitet einen Variablennamen ein | ||
- | * - Wildcard - Platzhalter für 0 oder mehr beliebige Zeichen | ||
- | ? - Wildcard - Platzhalter für genau ein beliebiges Zeichen | ||
- | [a-z] - steht als Platzhalter für genau ein Zeichen aus der eckigen Klammer | ||
- | [[:lower:]] - Zeichenklasse für Kleinbuchstaben, nicht von der Spracheinstellung abhängig, umfasst (bei korrekter Implentation) auch Buchstaben nicht-lateinischer Alphabete | ||
- | [^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. | ||
- | "..." - 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 | ||
- | > in Datei schreiben (diese wird überschrieben, falls bereits vorhanden) | ||
- | >> an Datei anhängen | ||
- | </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 |