PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [SHELL] grep liefert Ergebnis nicht nach exaktem Suchstring



spassmann
15-02-2007, 11:01
Hi Board,

ich suche Hilfe für mein kleines Shell Skript.

Ich durchsuche eine Log Datei nach bestimmten Dateiendungen ".mp3"
Dies wird mittels
grep -i ".mp3" /var/log/datei.log ausgeführt.

Nun liefert mir grep aber die zeilen zurück in denen bspw. auch "_mp3" vorkommt.

Da ich nicht nur nach ".mp3" suche sondern auch nach anderen Endungen gibt es natürlich sehr viele unerwünschte Ergebnisse. Wie kann ich es lösen, dass die Ergebnisse genauer werden.

Ich muss dazu sagen, dass sind meine ersten Schritte im Shell-Scripting.

Danke schonmal im Voraus für Eure Hilfe.

Gruß
Spassmann

peschmae
15-02-2007, 11:23
. steht in grep für "irgend ein Zeichen". Einen Punkt matchst du mit \.

Oder noch besser grep -i "\.mp3$" - das $ entspricht dem Zeilenende.

MfG Peschmä

spassmann
15-02-2007, 12:44
Danke für deinen Tip, funzt prima.

Gruß
Spassmann

403
16-02-2007, 23:30
In dem Zusammenhang vielleicht auch nuetzlich:

grep -x (fuer exact match) wenn man weiss was man sucht, schliesst bequem viele
falschpositive aus.