ADMIN-Tipp: Suchmuster umkehren

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps.

Das Wildcard-Sternchen zum Anzeigen von Dateien, die einem bestimmten Muster entsprechen, kennt jeder. Doch was kann man tun, um alle Files anzuzeigen, die bestimmte Zeichen nicht enthalten?

Wohl jeder Unix-Administrator hat schon einmal "ls *.txt" in einer Shell eingegeben, um sich nur Dateien anzeigen zu lassen, die auf ".txt" enden. Um alle Dateien anzuzeigen, die diesem Muster nicht entsprechen, bietet die Bash-Shell ein spezielles Feature namens "Ext(ended) Glob(bing)." Aktiviert wird es mit der Eingabe "shopt -s extglob". Anschließend lässt sich mit dem Ausrufezeichen, das sonst für andere Zwecke reserviert ist, das eingegebene Muster negieren. Im folgenden Beispiel enthält ein Verzeichnis vier Dateien:

> ls
abar afoo bbar bfoo
> ls a*
abar afoo
> ls !(b*)
-bash: !: event not found

Aktiviert man nun mit "shop -s extglob" das Extended Globbing der Bash, funktioniert die Negation des Suchausdrucks wie gewünscht:

> shopt -s extglob 
> ls !(b*)
abar afoo
> ls !(a*)
bbar bfoo
> ls !(*foo)
abar bbar

Die Eingabe von "shopt -u extglob" schaltet das Feature wieder ab. Das Reference Manual der Bash führt die mit Extglob aktivierten Sonderzeichen auf:

?(pattern-list) Matches zero or one occurrence of the given patterns. 
*(pattern-list) Matches zero or more occurrences of the given patterns. 
+(pattern-list) Matches one or more occurrences of the given patterns. 
@(pattern-list) Matches one of the given patterns. 
!(pattern-list) Matches anything except one of the given patterns.

27.03.2012

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

VLAN-Grundlagen

Oft reicht ein kleiner Fehler, um ein ganzes Netzwerk lahmzulegen. Ein unbedacht installierter DHCP-Server streut plötzlich falsche Adressen, und der Verkehr kommt zum Erliegen. Virtuelle Netzwerke (VLANs) schützen vor solchen und ähnlichen Katastrophen. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Ausgabe /2014

Was halten Sie von Zertifizierungen, die Fachkenntnisse und Fertigkeiten nachweisen?

  • Sie sind in der Praxis nutzlos
  • Sind für uns ein wichtiges Einstellungskriterium
  • Liefern einen Anhaltspunkt für die Qualifikation