Jokerzeichen/Wildcard: Unterschied zwischen den Versionen

Aus Xinux Wiki
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 das Jokerzeichen "*" als Platzhalter für beliebige Zeichen oder Zeichenfolgen in Dateinamen oder Verzeichnispfaden.
+
* Bash verwendet den Asterisk "*" als Platzhalter für beliebige Zeichen oder Zeichenfolgen in Dateinamen oder Verzeichnispfaden.
*Der Jokerzeichen "*" kann in Kombination mit anderen Zeichen verwendet werden, um gezielt nach bestimmten Dateien zu suchen oder Aktionen auf eine Gruppe von Dateien anzuwenden.
+
* 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 *
  
=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=
+
 
cp -v xx{,.save}
+
= 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 mehrereSonderzeichen mit ""=
+
 
*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

Aufgaben