Frage zu grep

T

tiptel170

Tripel-As
Guten abend,
ich habe mal eine frage zu grep:

Wie kann ich ein bestimmtes wort finden lassen in einer datei - es soll nur einmal ausgegeben werden:

Die datei sieht so aus:

Code:
Herr;Frau;Herrn;Herrn+Frau;Herrn und Frau;Herrn + Frau;Herrn & Frau;Herr und Frau; Herr + Frau;Herr & Frau;Herrn/Frau;Herr/Frau

Jetzt möchte ich nach Herr suchen und soll nur Herr ausgeben oder Herrn dann nur Herrn ...

ist das möglich?

Gruss tiptel170
 
Wenn ich dich richtig Verstanden habe, suchst du den Parameter -o (--only-matching), siehe: http://linux.die.net/man/1/egrep

Beispiel:
Code:
$ cat testDatei
Herr;Frau;Herrn;Herrn+Frau;Herrn und Frau;Herrn + Frau;Herrn & Frau;Herr und Frau; Herr + Frau;Herr & Frau;Herrn/Frau;Herr/Frau

$ grep -o "Herr" testDatei | tail -n 1
Herr
 
Zuletzt bearbeitet von einem Moderator:
Eventuell auch - wenn du wirklich nur ganze Felder, nicht auch Teilstrings rausziehen willst - etwas wie
Code:
tr ";" "\n" <testdata | grep "^Herr$"
Gruss, A.
 
Hallo nightT,

danke für die info. Das habe ich gesucht. Funktioniert einwandfrei!
 

Ähnliche Themen

Wie vom Script verwendete Befehle ermitteln um sie bei Bedarf nach zu installieren?

SED: eine Zeile mit einem Grep-Output ersetzen

HTML Code isolieren

Keine grafische Oberfläche (Debian Installation)

Dateien in Unix finden, die mehrere Strings beinhalten

Zurück
Oben