Antworten:
Sie können dies mit den Hilfsprogrammen sort
und erreichen uniq
.
Beispiel:
[john @ awesome ~] $ echo -e "test \ ntest \ ntest \ nanother test \ ntest" Prüfung Prüfung Prüfung ein weiterer Test Prüfung [john @ awesome ~] $ echo -e "test \ ntest \ ntest \ nanother test \ ntest" | sortieren | uniq ein weiterer Test Prüfung
Abhängig von den Daten möchten Sie möglicherweise auch einige der Schalter verwenden.
sort -u
anstelle von sort | uniq
. Es spart einen Prozess, reduziert die gesamten E / A-Vorgänge und reduziert die Gesamtzahl der durchzuführenden Vergleiche.
Sie können verwenden:
grep -rohP "(mySearchString)" . | sort -u
-r: rekursiv
-o: druckt nur den passenden Teil des Textes
-h: keine Dateinamen ausgeben
-P: Regex im Perl-Stil (Sie können stattdessen -E verwenden, je nach Fall)
sort -u
ist besser als sort | uniq
, wie @Chris Johnsen betonte.
sort
voruniq
zu verwenden, falls die Daten nicht bestellt werden. Sonstuniq
klappt das nicht ganz.