Jika saya mengambil file yang berisi berikut ini:
These are words
These are words
These are words
These are words
... untuk kata These
, itu akan mencetak string These are words
empat kali.
Bagaimana saya mencegah grep mencetak string berulang lebih dari satu kali? Kalau tidak, bagaimana saya bisa memanipulasi output grep untuk menghapus garis duplikat?
command-line
bash
grep
Trae
sumber
sumber
Jawaban:
Filosofi Unix adalah memiliki alat yang melakukan satu hal dan melakukannya dengan baik. Dalam hal ini,
grep
adalah alat yang memilih teks dari file. Untuk mengetahui apakah ada duplikat, satu jenis teks. Untuk menghapus duplikat, orang menggunakan-u
opsi untuksort
. Jadi:sort
memiliki banyak opsi: lihatman sort
. Jika Anda ingin menghitung duplikat atau memiliki skema yang lebih rumit untuk menentukan apa yang bukan atau tidak duplikat, maka pipa hasil sortir keuniq
:grep These filename | sort | uniq
dan lihatman
uniq` untuk opsi.sumber
Menggunakan
grep
dan saklar tambahan, jika Anda hanya mencari string tunggalDari
man grep
atau menggunakan
awk
;)sumber