GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa memfilter hasil unik dari keluaran grep?

Anda dapat melakukannya dengan sort dan uniq utilitas.

contoh:

[example@unixlinux.online ~]$ echo -e "test\ntest\ntest\nanother test\ntest"
test
test
test
another test
test
[example@unixlinux.online ~]$ echo -e "test\ntest\ntest\nanother test\ntest" | sort | uniq
another test
test

tergantung pada data, Anda mungkin ingin menggunakan beberapa sakelar juga.


Anda dapat menggunakan:

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

-r:rekursif

-o:hanya mencetak bagian teks yang cocok

-h:jangan cetak nama file

-P:regex gaya Perl (Anda dapat menggunakan -E sebagai gantinya tergantung pada kasus Anda)

sort -u lebih baik dari sort | uniq , seperti yang ditunjukkan oleh @Chris Johnsen.


Linux
  1. Bagaimana saya bisa mengecualikan direktori dari perintah ls

  2. Bagaimana cara menyalurkan output dari grep ke cp?

  3. Bagaimana saya bisa mengurutkan berdasarkan pemilik dan grup?

  1. Bagaimana saya bisa mengetahui apakah server saya memiliki semacam IPMI?

  2. Bagaimana cara mengurutkan hasil dari perintah ls berdasarkan tanggal modifikasi (direktori terlebih dahulu)?

  3. keluaran grep dari panjang ke lebar

  1. Bagaimana Mengurutkan Du Output Berdasarkan Ukuran?

  2. Bagaimana Cara Menekan Output Dari Grep, Sehingga Hanya Mengembalikan Status Keluar?

  3. Bagaimana cara menerapkan filter ke output waktu nyata dari `tail -f`?