2010-02-21 02:41:41 +0000 2010-02-21 02:41:41 +0000
79
79
Advertisement

¿Cómo puedo filtrar los resultados únicos de la salida de grep?

Advertisement

En linux, puedo grep una cadena de un archivo usando grep mySearchString myFile.txt. ¿Cómo puedo obtener sólo el resultado que es único?

Advertisement

Respuestas (2)

132
132
132
2010-02-21 02:52:47 +0000

Puede conseguirlo con las utilidades sort y uniq .

ejemplo:

[john@awesome ~]$ echo -e "test\ntest\ntest\nanother test\ntest" test test test another test test [john@awesome ~]$ echo -e "test\ntest\ntest\nanother test\ntest" | sort | uniq another test test

dependiendo de los datos puede querer utilizar también algunos de los interruptores.

3
3
3
2019-08-22 21:13:48 +0000

Puede utilizar:

grep -rohP "(mySearchString)" . | sort -u

-r: recursivo

-o: sólo imprime la parte del texto que coincide

-h: no imprime los nombres de los archivos

-P: regex estilo Perl (puede usar -E en su lugar dependiendo de su caso)

sort -u es mejor que sort | uniq, como señaló @Chris Johnsen.

Advertisement
Advertisement