Jokerzeichen/Wildcard: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
=Was ist das?= | =Was ist das?= | ||
| − | *Bash verwendet | + | * Bash verwendet den Asterisk "*" als Platzhalter für beliebige Zeichen oder Zeichenfolgen in Dateinamen oder Verzeichnispfaden. |
| − | * | + | * Die Wildcard "*" kann in Kombination mit anderen Zeichen verwendet werden, um gezielt nach bestimmten Dateien zu suchen oder Aktionen auf eine Gruppe von Dateien anzuwenden. |
| + | |||
| + | = Einführung = | ||
| + | |||
| + | * mkdir test | ||
| + | * cd test/ | ||
| + | * touch a ab abc abcd abcd b cd efg haij | ||
| + | |||
| + | = Ein * steht für jedes Zeichen beliebig oft = | ||
| + | * ls * | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
a ab abc abcd b cd efg haij | a ab abc abcd b cd efg haij | ||
| − | *ls ab* | + | |
| + | * ls ab* | ||
| + | |||
ab abc abcd | ab abc abcd | ||
| − | =Ein ? steht genau für ein Zeichen= | + | |
| − | *ls ? | + | = Ein ? steht genau für ein Zeichen = |
| + | |||
| + | * ls ? | ||
| + | |||
a b | a b | ||
| − | *ls ?? | + | |
| + | * ls ?? | ||
| + | |||
ab cd | ab cd | ||
| − | *ls ???* | + | |
| + | * ls ???* | ||
| + | |||
abc abcd efg haij | abc abcd efg haij | ||
| − | =Eine [] steht genau für ein Zeichen das in der Klammer ist= | + | |
| − | *ls [ab] | + | = Eine [] steht genau für ein Zeichen das in der Klammer ist = |
| + | |||
| + | * ls [ab] | ||
| + | |||
a b | a b | ||
| − | *ls [abc]? | + | |
| + | * ls [abc]? | ||
| + | |||
ab cd | ab cd | ||
| − | =Eine [!] steht genau für ein Zeichen das nicht in der Klammer ist= | + | |
| − | *ls [!abc]* | + | = Eine [!] steht genau für ein Zeichen das nicht in der Klammer ist = |
| + | |||
| + | * ls [!abc]* | ||
| + | |||
efg haij | efg haij | ||
| − | =Mit der {element1,element2} kann man Dateinamen generieren= | + | |
| − | *mkdir -v dir{1,2,3,4,5,6} | + | = Mit der {element1,element2} kann man Dateinamen generieren = |
| + | |||
| + | * mkdir -v dir{1,2,3,4,5,6} | ||
| + | |||
mkdir: Verzeichnis „dir1“ angelegt | mkdir: Verzeichnis „dir1“ angelegt | ||
mkdir: Verzeichnis „dir2“ angelegt | mkdir: Verzeichnis „dir2“ angelegt | ||
| Zeile 35: | Zeile 58: | ||
mkdir: Verzeichnis „dir5“ angelegt | mkdir: Verzeichnis „dir5“ angelegt | ||
mkdir: Verzeichnis „dir6“ angelegt | mkdir: Verzeichnis „dir6“ angelegt | ||
| − | =Backup mit Dateinamengenerierung= | + | |
| − | + | = Backup mit Dateinamengenerierung = | |
| − | =Wenn kein Treffer erfolgt wird das Sonderzeichen eingesetzt= | + | |
| − | *rm -r * | + | * cp -v xx{,.save} |
| − | *mkdir -v * | + | |
| + | = Wenn kein Treffer erfolgt wird das Sonderzeichen eingesetzt = | ||
| + | |||
| + | * rm -r * | ||
| + | * mkdir -v * | ||
| + | |||
mkdir: Verzeichnis „*“ angelegt | mkdir: Verzeichnis „*“ angelegt | ||
| − | *cd *t/*$ | + | |
| − | =Entwerten kann man ein Sonderzeichen mit einem \= | + | * cd *t/*$ |
| − | *rm -rvi \* | + | |
| + | = Entwerten kann man ein Sonderzeichen mit einem \ = | ||
| + | |||
| + | * rm -rvi \* | ||
| + | |||
rm: Verzeichnis „*“ entfernen? n | rm: Verzeichnis „*“ entfernen? n | ||
| − | =Entwerten kann man | + | |
| − | *rm -rvi "*" | + | = Entwerten kann man mehrere Sonderzeichen mit "..." = |
| + | * '''rm -rvi "*"''' | ||
| + | |||
rm: Verzeichnis „*“ entfernen? n | rm: Verzeichnis „*“ entfernen? n | ||
| + | |||
= Entwerten kann man mehrere Sonderzeichen mit '...' = | = Entwerten kann man mehrere Sonderzeichen mit '...' = | ||
| − | *rm -rvi '*' | + | |
| + | * '''rm -rvi '*'''' | ||
| + | |||
rm: Verzeichnis „*“ entfernen? n | rm: Verzeichnis „*“ entfernen? n | ||
| + | |||
| + | = Aufgaben = | ||
| + | |||
| + | * [[Aufgaben Wildcards]] | ||
Aktuelle Version vom 1. Juni 2023, 13:08 Uhr
Was ist das?
- Bash verwendet den Asterisk "*" als Platzhalter für beliebige Zeichen oder Zeichenfolgen in Dateinamen oder Verzeichnispfaden.
- Die Wildcard "*" kann in Kombination mit anderen Zeichen verwendet werden, um gezielt nach bestimmten Dateien zu suchen oder Aktionen auf eine Gruppe von Dateien anzuwenden.
Einführung
- mkdir test
- cd test/
- touch a ab abc abcd abcd b cd efg haij
Ein * steht für jedes Zeichen beliebig oft
- ls *
a ab abc abcd b cd efg haij
- ls ab*
ab abc abcd
Ein ? steht genau für ein Zeichen
- ls ?
a b
- ls ??
ab cd
- ls ???*
abc abcd efg haij
Eine [] steht genau für ein Zeichen das in der Klammer ist
- ls [ab]
a b
- ls [abc]?
ab cd
Eine [!] steht genau für ein Zeichen das nicht in der Klammer ist
- ls [!abc]*
efg haij
Mit der {element1,element2} kann man Dateinamen generieren
- mkdir -v dir{1,2,3,4,5,6}
mkdir: Verzeichnis „dir1“ angelegt mkdir: Verzeichnis „dir2“ angelegt mkdir: Verzeichnis „dir3“ angelegt mkdir: Verzeichnis „dir4“ angelegt mkdir: Verzeichnis „dir5“ angelegt mkdir: Verzeichnis „dir6“ angelegt
Backup mit Dateinamengenerierung
- cp -v xx{,.save}
Wenn kein Treffer erfolgt wird das Sonderzeichen eingesetzt
- rm -r *
- mkdir -v *
mkdir: Verzeichnis „*“ angelegt
- cd *t/*$
Entwerten kann man ein Sonderzeichen mit einem \
- rm -rvi \*
rm: Verzeichnis „*“ entfernen? n
Entwerten kann man mehrere Sonderzeichen mit "..."
- rm -rvi "*"
rm: Verzeichnis „*“ entfernen? n
Entwerten kann man mehrere Sonderzeichen mit '...'
- rm -rvi '*'
rm: Verzeichnis „*“ entfernen? n