Jika Anda kebanyakan bekerja pada baris perintah dan berurusan dengan banyak file teks setiap hari, Anda harus mengetahui Uniq memerintah.
Perintah Uniq membantu Anda dengan mudah menemukan baris berulang dan duplikat dari file. Uniq tidak hanya untuk mencari duplikat, tetapi juga untuk menghapus duplikat, menampilkan jumlah kemunculan baris duplikat, hanya menampilkan baris yang berulang dan hanya menampilkan baris unik dll.
Harap dicatat bahwa perintah 'uniq' tidak akan mendeteksi garis yang berulang kecuali jika berdekatan. Jadi, Anda mungkin perlu mengurutkannya terlebih dahulu atau menggabungkan perintah sortir dengan uniq untuk mendapatkan hasilnya. Izinkan saya untuk menunjukkan beberapa contoh.
Karena perintah uniq adalah bagian dari paket inti GNU, perintah ini sudah diinstal sebelumnya di sebagian besar distribusi Linux. Jadi, jangan repot-repot menginstal dan melihat beberapa contoh perintah Uniq yang praktis.
Contoh perintah Uniq
Pertama, mari kita buat file dengan beberapa baris duplikat.
$ vi ostechnix.txt
welcome to ostechnix welcome to ostechnix Linus is the creator of Linux. Linux is secure by default Linus is the creator of Linux. Top 500 super computers are powered by Linux
Seperti yang Anda lihat di file di atas, kami memiliki beberapa baris berulang (baris pertama, kedua, ketiga, dan kelima adalah duplikat).
1. Hapus baris duplikat berurutan dalam file menggunakan perintah Uniq
Jika Anda menggunakan perintah 'uniq' tanpa argumen apa pun, itu akan menghapus semua baris duplikat yang berurutan dan hanya menampilkan baris unik.
$ uniq ostechnix.txt
Contoh keluaran:
Seperti yang Anda lihat, perintah uniq menghapus semua baris duplikat berturut-turut dalam file yang diberikan. Anda mungkin juga memperhatikan bahwa output di atas masih memiliki duplikat di baris kedua dan keempat. Itu karena perintah uniq hanya akan menghilangkan baris yang berulang hanya jika mereka berdekatan. Kami tentu saja dapat menghapus duplikat yang tidak berurutan itu juga. Lihat contoh kedua di bawah ini.
2. Hapus semua baris duplikat
$ sort ostechnix.txt | uniq
Contoh keluaran:
Lihat? Tidak ada duplikat atau garis berulang. Dengan kata lain, perintah di atas akan menampilkan setiap baris satu kali dari file ostechnix.txt
.
Dalam contoh di atas kita menggunakan perintah sort bersama dengan uniq, karena, seperti yang telah saya sebutkan, uniq tidak akan menemukan baris duplikat/berulang kecuali jika mereka berdekatan.
3. Tampilkan hanya baris unik dari file
Untuk menampilkan hanya baris unik dari file, perintahnya adalah:
$ sort ostechnix.txt | uniq -u
Contoh keluaran:
Linux is secure by default Top 500 super computers are powered by Linux
Seperti yang Anda lihat, kami hanya memiliki dua baris unik dalam file yang diberikan.
4. Tampilkan hanya garis duplikat
Demikian pula, kami juga dapat menampilkan baris duplikat dari file seperti di bawah ini.
$ sort ostechnix.txt | uniq -d
Contoh keluaran:
Linus is the creator of Linux. welcome to ostechnix
Keduanya adalah baris yang diulang/digandakan dalam file ostechnix.txt. Harap diperhatikan bahwa -d
(huruf kecil d) hanya akan mencetak baris duplikat , satu untuk setiap grup . Untuk mencetak semua baris duplikat , gunakan -D
(huruf besar d) seperti di bawah ini.
$ sort ostechnix.txt | uniq -D
Lihat perbedaan antara kedua bendera di tangkapan layar di bawah ini.
5. Menampilkan jumlah kemunculan setiap baris dalam file
Untuk beberapa alasan, Anda mungkin ingin memeriksa berapa kali sebuah baris diulang dalam file yang diberikan. Untuk melakukannya, gunakan -c
tandai seperti di bawah ini.
$ sort ostechnix.txt | uniq -c
Contoh keluaran:
2 Linus is the creator of Linux. 1 Linux is secure by default 1 Top 500 super computers are powered by Linux 2 welcome to ostechnix
Kami juga dapat menampilkan jumlah kemunculan setiap baris bersama dengan baris itu, diurutkan berdasarkan yang paling sering menggunakan perintah:
$ sort ostechnix.txt | uniq -c | sort -nr
Contoh keluaran:
2 welcome to ostechnix 2 Linus is the creator of Linux. 1 Top 500 super computers are powered by Linux 1 Linux is secure by default
6. Batasi perbandingan dengan karakter 'N'
Perintah Uniq memungkinkan kita untuk membatasi perbandingan jumlah karakter baris tertentu dalam file menggunakan -w
bendera. Sebagai contoh, mari kita batasi perbandingan dengan 4 karakter pertama dari baris dalam file dan menampilkan baris yang berulang seperti yang ditunjukkan di bawah ini.
$ uniq -d -w 4 ostechnix.txt
7. Hindari perbandingan dengan karakter 'N' pertama
Seperti perbandingan batas ke N karakter baris dalam file, kita juga dapat menghindari membandingkan N karakter pertama menggunakan -s
bendera.
Perintah berikut akan menghindari perbandingan dengan 4 karakter pertama dari baris dalam file:
$ uniq -d -s 4 ostechnix.txt
Untuk menghindari membandingkan bidang N pertama alih-alih karakter, gunakan tanda '-f' pada perintah di atas.
Untuk detail lebih lanjut, lihat bagian bantuan;
$ uniq --help
dan halaman manual.
$ man uniq
Baca Juga:
- Tutorial Perintah Lipat Dengan Contoh Untuk Pemula