Handbuchseiten


 

 

Bezeichnung

grep - durchsucht Dateien nach Ausdrücken

Syntax

grep [-CVbchilnsvwx] [-Anzahl] [-AB Anzahl] [[-e] Ausdruck |-f Datei] [Datei...]

Beschreibung

grep durchsucht die angegebenen Dateien (oder die Standardeingabe) nach einem Ausdruck und gibt die entsprechenden Zeilen aus. Der Status von grep ist 0, wenn der Ausdruck gefunden wurde und sonst 1.

Als Ausdruck akzeptiert grep reguläre Ausdrücke mit den folgenden Steuerzeichen:

c
ein einzelner Buchstabe paßt auf sich selbst
.
ein Punkt paßt auf jeden Buchstaben außer auf das Zeilenende
\\?
das dem Operator \\? vorangehende Muster kann null oder einmal vorkommen
*
das dem Operator * vorangehende Muster kann 0 mal oder öfter vorkommen
\\+
das dem Operator \\+ vorangehende Muster kann einmal oder öfter vorkommen
\\|
die durch den Operator \\| verbundenden Argumente werden oder verknüpft
^
(Caret) paßt auf den Zeilenanfang
$
paßt auf das Zeilenende
\\<
paßt auf den Wortanfang
\\>
paßt auf das Wortende
[Buchstaben]
paßt auf alle Buchstaben; dabei können einzelne Buchstaben, aber auch Bereiche in der Form von-bis angegeben werden; wenn der erste Buchstabe nach [ ein ^ ist, paßt der Ausdruck auf alle Buchstaben, außer den Aufgeführten
\\( \\)
die Klammern fassen Ausdrücke zusammen; außerdem wird der auf den in Klammern eingeschlossene Teil des Musters passende Text markiert und mit einem folgenden \N Ausdruck referenziert (Tag)
\N
referenziert die auf das in der N-ten runden Klammern eingeschlossene Muster passende Zeichenkette.
\\
jedes der Sonderzeichen kann, durch einen \\ (Backslash) eingeleitet, sich selbst suchen
\\b
paßt auf kein Zeichen, sondern auf den Anfang oder das Ende eines Wortes
\\B
symbolisiert den Raum innerhalb eines Wortes
\\w
paßt auf alle alphanumerischen Zeichen [A-Za-z0-9]
\\W
paßt auf alle nichtalphanumerischen Zeichen [^A-Za-z0-9]

Die Rangfolge der Operatoren ist (von der höchsten zur niedrigsten):(, ), ?, *, + und |. Die anderen Operatoren sind mit den anderen Buchstaben gleichrangig.

Optionen

-A Anzahl
gibt Anzahl Zeilen Kontext nach jeder gefundenden Zeile aus
-B Anzahl
gibt Anzahl Zeilen Kontext vor jeder gefundenden Zeile aus
-C
gibt 2 Zeilen Kontext vor und nach jeder gefundenden Zeile aus
-Anzahl
gibt Anzahl Zeilen Kontext vor und nach jeder gefundenden Zeile aus
-V
gibt die Versionsnummer auf die Standardfehlerausgabe
-b
gibt die Position jeder gefundenen Stelle mit aus
-c
gibt nur die Gesamtzahl der gefundenen Stellen aus
-e Ausdruck
sucht nach Ausdruck
-f Datei
Datei enthält die Ausdrücke, nach denen gesucht werden soll.
-h
unterdrückt die Dateinamen vor jeder Fundstelle
-i
ignoriert Groß und Kleinschreibung
-l
gibt nur die Dateinamen mit Fundstellen aus
-n
gibt die Zeilennummer zu jeder Fundstelle aus
-r oder --recursive
durchsucht rekursiv ganze Verzeichnisbäume
-s
(silent) keine Ausgabe außer Fehlermeldungen
-v
gibt nur Zeilen aus, die den Ausdruck nicht enthalten
-w
gibt nur Zeilen aus, in denen der Ausdruck als komplettes Wort vorkommt
-x
gibt nur Zeilen aus, die den Ausdruck als ganze Zeile enthalten

Beispiel

Mit dem Kommando

grep '\( .... \).+\1' Handbuch.tex

wird in der Datei Handbuch.tex nach Zeilen gesucht, in denen ein Wort mit vier Buchstaben doppelt, aber nicht unmittelbar nach dem ersten vorkommt.

Siehe Auch

egrep(1) und das LunetIX Linuxhandbuch

Autor

Mike Haertel, James A. Woods und David Olson