Metazeichen
Auch Wildcards genannt sind:
* ? ^ [ ! [ \
Metazeichen werden von der Shell expandiert und das Resultat wird als Parameter an das aufgerufene Programm übergeben.Wichtig: Die Dateinamen-Expansion erfolgt vor dem Aufruf des Programmes!
grep Suchen in Dateien
grep, fgrep und egrep sind Kommandos, die eine oder mehrere Dateien nach einem übergebenen Suchmuster durchsuchen: Zeilen die das Suchmuster enthalten werden auf Standard-Output ausgeben. Durch Umleitung oder Pipe können die Ergebnisse auch an andere Kommandos zur Weiterbearbeitung übergeben werden.
Die maximale Zeilenlänge ist 256 Zeichen.
fgrep fast global regular expression
grep global regular expression
egrep extended global regular expression
Die drei Kommandos unterscheiden sich intern durch den verwendeten Suchalgorithmus.
Aus der Anwendersicht in den Möglichkeiten Suchmuster zu definieren und in der Geschwindigkeit.
Alle grep-Formen liefern einen Returncode 0, wenn die Suche erfolgreich war
und ungleich 0, wenn keine Übereinstimmung gefunden wurde.
fgrep (fast grep, schnelle Suche)
Die Möglichkeiten wonach gesucht werden kann, sind bei fgrep gegenüber grep und egrep eingeschränkt.
Dadurch kann das Programm einen schnelleren Suchalgorithmus verwenden.
egrep extended
global
regular
expression
egrep erlaubt erweiterte (extended) regular expression wie in ed oder sed
Ausnahme \( und \) sind unzulässig .
Darüber hinaus sind folgende Erweiterungen zulässig.
ausdruck* | Der Ausdruck darf 0 bis n mal in Folge vorkommen |
ausdruck+ | Der Ausdruck darf 1 bis n mal in Folge vorkommen |
ausdruck? | Der Ausdruck darf 0 bis 1 mal in Folge vorkommen |
ausdruck ausdruck | Erst muß der erste Ausdruck vorkommen, dann der zweite Ausdruck |
ausdruck|ausdruck | Ausdruck oder Ausdruck |
\<ausdruck\> | Ausdruck muß als Wort gefunden werden, d.h. er darf
nicht in anderen Worten enthalten sein. |
Bespiele:
egrep 'Feier[ta]|feier[ta]' datei
Gefunden wird : Feiertag Feierabend
einfacher:
egrep '[Ff]eier[ta]' datei
egrep -n ' \<und\>' maerchen
Gefunden wird :
- und zwischen Blanks
- <TAB>und<TAB> zwischen TABS
- und. gefolgt von Punkt