Top Banner
grep 1. Anwendungsgebiete 2. Wichtigste Optionen 3. Weitere Optionen 4. Grep mit regular expressions 1
12

Grep

Jun 26, 2015

Download

Documents

strehlst
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Grep

grep1. Anwendungsgebiete2. Wichtigste Optionen3. Weitere Optionen4. Grep mit regular expressions

1

Page 2: Grep

Das grep-Kommando Global search for a Regular Expression and Print out matched lines

suchen und filtern von Strings in Dateien

z.B. Logdateien und Quelltext

grep

grep "[string]" [file]

grep "212.92.37.62" access.log

2

Vorführender
Präsentationsnotizen
access.log error.log Beispiel IP-Adresse und Servermeldung grep "212.92.37.62" access.log grep "Connection reset by peer" error.log
Page 3: Grep

grep -n

Zeilennummern ausgeben (line number)

grep –n "[string]" [file/dir]

grep -i

Groß- und Kleinschreibung ignorieren (ignore case)

grep -i "[string]" [file/dir]

3

Vorführender
Präsentationsnotizen
grep -n "GET" access.log grep -i "get" access.log
Page 4: Grep

grep -R

rekursiv suchen (line number)

grep -R "[string]" [dir]

grep -l

nur Dateinamen ausgeben, in denen Suche erfolgreich war

grep -l "[string]" [dir]

4

Vorführender
Präsentationsnotizen
grep -R "get" access.log /var/log/ grep -l "get" access.log /var/log/ grep -R -l "get" access.log /var/log/
Page 5: Grep

grep -s

keine Fehlermeldungen ausgeben (suppress error messages)

grep –s "[string]" [file/dir]

5

Vorführender
Präsentationsnotizen
grep -R –l -s "get" access.log /var/log/
Page 6: Grep

grep -c

Anzahl der gefunden Zeilen ausgeben (count matching lines)

grep -c "[string]" [file/dir]

grep -v

Ergebnis umkehren (invert match)

grep -v "[string]" [dir]

6

Vorführender
Präsentationsnotizen
grep -c "GET" access.log grep "GET" access.log grep -v "GET" access.log grep -c -v "GET" access.log
Page 7: Grep

grep -m

nach n Ergebnissen Suche beenden (max count)

grep -m [number] "[string]" [file/directory]

grep -o

nur den Ergebnisteil einer Zeile anzeigen (show only matching)

grep –o "[string]" [file]

7

Vorführender
Präsentationsnotizen
grep -m 3 "404" access.log grep -o "404" access.log
Page 8: Grep

Regular expressions “beschreibende Suche” mit Platzhaltern und Wertebereichen

^ Zeilenanfang

$ Zeilenende

. beliebiges Zeichen

* beliebig häufige Wiederholung eines Zeichens

Suche nach beliebig langen Strings mit beliebigem Inhalt auf einer Zeile

grep "^.*$" [directory]

8

Vorführender
Präsentationsnotizen
grep "^.*$" error.log grep ".txt$" error.log
Page 9: Grep

String literals Wertebereiche definieren

[a-z] die latein. Kleinbuchstaben a bis z dürfen vorkommen

[0-9] die Ziffern 0 bis 9 dürfen vorkommen

[^3-7] die Ziffern 3-7 dürfen nicht vorkommen (Negation)

[0-9\.] die Ziffern 0-9 und der Punkt dürfen vorkommen

Suche nach einer beliebigen IP-Adresse

grep "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" [file]

9

Vorführender
Präsentationsnotizen
Beispiel Dateiendung grep -c "^.*\.png" access.log grep -c "^.*\.html" access.log Beispiel Status/Meldung grep -o -n "\[[a-z]*\]" error.log Beispiel IP-Adresse grep "212.92.37.62" access.log grep -o -m 10 "[0-9]*\.[0-9]*\.[0-9]*\.[0-9]*" access.log grep -o -m 10 "[0-9]*\.0\.0\.[0-9]*" access.log
Page 10: Grep

Quantifier Häufigkeiten bestimmen

* beliebig oft

{n} genau n-Mal

{n,} mindestens n-Mal

{n,m} mindestens n-Mal, maximal m-Mal

verfeinerte Suche nach einer beliebigen IP-Adresse

grep "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}" [file]

10

Vorführender
Präsentationsnotizen
Beispiel Status/Meldung grep -o -n "\[[a-z]\{1,10\}\]" error.log Beispiel IP-Adresse grep -o –m 10 "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}“ access.log Beispiel Umlaut Dateiendung grep “t[a-z]\{1\}st.png” access.log
Page 11: Grep

Quellen http://en.wikipedia.org/wiki/Grep, 28. April 2013

http://en.wikipedia.org/wiki/Regular_expression , 28. April 2013

man grep

11

Vorführender
Präsentationsnotizen
Beispiel Status/Meldung grep -o -n "\[[a-z]\{1,10\}\]" error.log Beispiel IP-Adresse grep -o –m 10 "[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}“ access.log Beispiel Umlaut Dateiendung grep “t[a-z]\{1\}st.png” access.log
Page 12: Grep

danke

12