IT-Academy Logo
Sign Up Login Help
Home - Betriebssysteme - Unix - Allgemeines - Der Umgang mit wildecards



Der Umgang mit wildecards

Es wird die wildcard expansion durch die shell ("globbing") erklaert.


Autor: Franz Schaefer (mond)
Datum: 23-01-2002, 19:30:34
Referenzen: man bash (nach "Pattern Matching" suchen)
info bash
Schwierigkeit: Anfänger
Ansichten: 2397x
Rating: Bisher keine Bewertung.

Hinweis:

Für den hier dargestellte Inhalt ist nicht der Betreiber der Plattform, sondern der jeweilige Autor verantwortlich.
Falls Sie Missbrauch vermuten, bitten wir Sie, uns unter missbrauch@it-academy.cc zu kontaktieren.

[Druckansicht] [Als E-Mail senden] [Kommentar verfassen]



wir haben schon oft befehle wie:

cp *.txt *.html blabla/

verwendet. dieser befehle wuerde alle file die auf .txt oder .html aenden
ins verzeichniss blabla das suchen aller files die mit .txt enden macht
aber nicht das cp programm sondern das macht schon die shell. diese
ersetzt den ausdruckt *.txt durch die namen aller files die auf .txt enden
("matchen") und ruft das cp programm dann mit diesen namen auf.

wir koenenn sich das anschaun indem wir echo verwenden um alle argumente
auszugeben:

echo *.txt

gibt die namen aller files aus die auf .txt enden. (die shell ruft das
echo programm genau mit diesen argumenten auf).

dieses ersetzen der "wildcard" ausdruecke nennt man "globbing".
die ausdruecke sind allerdings nicht so maechtig wie die regular
expressions die wir bei grep kennengelernt haben.

echo [abc]*.txt

wuerde alle files finden die mit a b oder c beginnen und auf .txt enden.

echo [a-h]*[i]*.txt

wuerde alle files matchen die mit a,b,c,d,f,g oder h beginnen und irgendwo
im namen ein i haben und auf .txt enden.

echo *.{txt,html,jpg}

wuerde alle files finden die entweder auf txt auf html oder auf jpg enden
das matchen geht allerdings nicht nur auf den dateinamen sondern auch auf
verzeichnisse:

echo /home/*/.bash_profile

gibt die namen aller .bash_profiles aller user an (vorausgesetzt du hast
lesebrechtigung auf ihre homeverzeichnisse)

das globbing ist also doch halbwegs leistungsfaehig. morgen lernen wir
aber noch etwas nueztlicheres: command subtitution.


EXERCISES:

* welches programm ist fuer das expandieren der wildcards zustaendig?

* teste das shell globing mit dem echo befehl

______________________________________________
CD ist ein service von SILVER SERVER
der inhalt unterliegt der GFDL
_______________________________________________



[back to top]



Userdaten
User nicht eingeloggt

Gesamtranking
Werbung
Datenbankstand
Autoren:04506
Artikel:00815
Glossar:04116
News:13565
Userbeiträge:16552
Queueeinträge:06243
News Umfrage
Ihre Anforderungen an ein Online-Zeiterfassungs-Produkt?
Mobile Nutzung möglich (Ipone, Android)
Externe API Schnittstelle/Plugins dritter
Zeiterfassung meiner Mitarbeiter
Exportieren in CSV/XLS
Siehe Kommentar



[Results] | [Archiv] Votes: 1142
Comments: 0