20 Contoh Perintah Linux Egrep
- 1870
- 332
- Dwayne Hackett
Singkat: Dalam panduan ini, kita akan membahas beberapa contoh praktis dari perintah egrep. Setelah mengikuti panduan ini, pengguna akan dapat melakukan pencarian teks lebih efisien di Linux.
Pernahkah Anda frustrasi karena Anda tidak dapat menemukan informasi yang diperlukan dalam log? Mengekstraksi informasi yang diperlukan dari kumpulan data besar adalah tugas yang kompleks dan memakan waktu.
Hal -hal menjadi sangat menantang jika sistem operasi tidak menyediakan alat yang tepat dan di sini datang Linux untuk menyelamatkan Anda. Linux menyediakan berbagai utilitas penyaringan teks seperti AWK, SED, memotong, dll.
Namun, Egrep adalah salah satu utilitas yang paling kuat dan umum digunakan untuk pemrosesan teks di Linux, dan kami akan membahas beberapa contoh Egrep memerintah.
Itu Egrep Perintah di Linux dikenali oleh keluarga perintah GREP, yang digunakan untuk mencari dan mencocokkan pola tertentu dalam file. Ini bekerja sama dengan grep -e (grep diperpanjang regex), tetapi sebagian besar mencari file tertentu atau bahkan baris untuk melapisi atau mencetak baris dalam file yang diberikan.
Sintaksis Egrep Perintah adalah sebagai berikut:
$ egrep [opsi] Pola [File]
Mari kita buat file teks sampel dengan konten berikut untuk menggunakan contoh:
$ sampel kucing.txtContoh file teks
Di sini, kita dapat melihat bahwa file teks sudah siap. Sekarang mari kita bahas beberapa contoh umum yang dapat digunakan setiap hari.
1. Cara menemukan pola dalam satu file
Mari kita mulai dengan contoh pencocokan pola sederhana, di mana kita dapat menggunakan perintah di bawah ini untuk mencari string profesional
di sebuah Sampel.txt mengajukan:
$ egrep profesional sampel.txtCari String di File
Di sini, kita dapat melihat bahwa perintah mencetak baris yang berisi pola yang ditentukan.
2. Cara menyorot pola yang cocok dalam file
Kami dapat membuat output lebih informatif dengan menyoroti pola yang cocok. Untuk mencapai ini, kita dapat menggunakan --warna
opsi Egrep memerintah. Misalnya, perintah di bawah ini akan menyorot teks profesional
dalam warna merah:
$ egrep - -color = sampel Profesional Otomatis.txtSorot teks dalam file
Di sini, kita dapat melihat bahwa output yang sama lebih informatif dibandingkan dengan yang sebelumnya. Juga, kami dapat dengan mudah mengidentifikasi bahwa kata tersebut profesional
diulang dua kali.
Pada sebagian besar sistem Linux, pengaturan di atas diaktifkan secara default menggunakan alias berikut:
$ alias egrep = "egrep -color = auto"
3. Bagaimana menemukan pola di beberapa file
Itu Egrep Perintah menerima banyak file sebagai argumen, yang memungkinkan kita mencari pola tertentu di beberapa file. Mari kita pahami ini dengan sebuah contoh.
Pertama, buat salinan Sampel.txt mengajukan:
$ sampel CP.TXT COPODS COPLE.txt
Sekarang, cari polanya profesional
Di kedua file:
$ egrep profesional sampel.TXT COPODS COPLE.txtCari string di beberapa file
Dalam contoh di atas, kita dapat melihat nama file dalam output, yang mewakili baris yang cocok dari file itu.
4. Cara menghitung baris yang cocok dalam file
Terkadang kita hanya perlu mencari tahu apakah polanya hadir dalam file. Jika ya maka dalam berapa banyak barisnya? Dalam kasus seperti itu, kita dapat menggunakan -C
Opsi Perintah.
Misalnya, perintah di bawah ini akan ditampilkan 1 sebagai output karena kata itu profesional
hadir hanya dalam satu baris.
$ egrep -C Profesional Sampel.txt 1
5. Cara mencetak hanya baris yang cocok dalam file
Dalam contoh sebelumnya, kami melihat bahwa -C
opsi tidak menghitung jumlah kejadian pola. Misalnya, kata tersebut profesional
muncul dua kali dalam baris yang sama tetapi -C
Opsi memperlakukannya sebagai satu pertandingan saja.
Dalam kasus seperti itu, kita dapat menggunakan -Hai
opsi perintah untuk mencetak pola yang cocok saja. Misalnya, perintah di bawah ini akan menampilkan kata tersebut profesional
pada dua baris terpisah:
$ egrep -o Profesional Sampel.txt
Sekarang, mari kita hitung garis menggunakan perintah WC:
$ egrep -o Profesional Sampel.txt | WC -LCetak baris yang cocok dalam file
Dalam contoh di atas, kami telah menggunakan kombinasi Egrep Dan toilet perintah untuk menghitung jumlah kejadian dari pola tertentu.
6. Bagaimana menemukan pola dengan mengabaikan kasus
Secara default, Egrep melakukan pencocokan pola dengan cara yang sensitif terhadap case. Itu berarti kata -kata - kami, kami, kami, dan kami diperlakukan sebagai kata yang berbeda. Namun, kami dapat menegakkan pencarian yang tidak peka case menggunakan -Saya
pilihan.
Misalnya, dalam kecocokan pola perintah di bawah ini akan berhasil untuk teks Kami
Dan Kami
:
$ egrep -Aku sampel.txtCari case string tidak sensitif
7. Cara mengecualikan pola yang cocok sebagian
Dalam contoh sebelumnya, kami melihat bahwa Egrep Perintah melakukan kecocokan parsial. Misalnya, saat kami mencari teks Kami
Kemudian pencocokan pola juga berhasil untuk teks lain. Seperti web, situs web, dan dulu.
Untuk mengatasi keterbatasan ini, kita bisa -w
opsi, yang memberlakukan seluruh kata pencocokan.
$ egrep -w kami sampel.txtCetak hanya pola yang cocok dalam file
8. Cara membalikkan pencocokan pola dalam file
Sejauh ini, kami menggunakan Egrep Perintah untuk mencetak garis di mana pola yang diberikan hadir. Namun, kadang -kadang kami ingin melakukan operasi dengan cara yang berlawanan.
Misalnya, kami mungkin ingin mencetak garis di mana pola yang diberikan tidak ada. Kita dapat mencapai ini dengan bantuan -v
pilihan:
$ egrep -v kami sampel.txtMembalikkan pencocokan pola dalam file
Di sini, kita dapat melihat bahwa perintah tersebut mencetak semua baris yang tidak berisi teks Kami
.
9. Bagaimana menemukan nomor garis polanya
Kita bisa menggunakan -N
Opsi perintah untuk mengaktifkan penomoran baris, yang menunjukkan nomor baris dalam output saat pencocokan pola berhasil. Trik sederhana ini membuat output lebih bermakna.
$ egrep -n sampel profesional.txtJumlah baris cetak dari pola yang cocok
Dalam output di atas, kita dapat melihat bahwa kata itu profesional
hadir di Ke -5 garis.
10. Cara melakukan pencocokan pola dalam mode tenang
Dalam mode tenang, Egrep Perintah tidak mencetak pola yang cocok. Jadi kita harus menggunakan nilai pengembalian perintah untuk mengidentifikasi apakah pencocokan pola berhasil atau tidak.
Kita bisa menggunakan -Q
opsi perintah untuk mengaktifkan mode tenang, yang berguna saat menulis skrip shell.
$ egrep -Q Profesional Sampel.txt $ egrep -q sampel pola yang tidak ada.txtPencocokan pola pencarian dalam mode tenang
Dalam contoh ini, nol Nilai pengembalian menunjukkan adanya pola sedangkan nilai non-nol menunjukkan tidak adanya pola.
11. Cara menampilkan garis sebelum pola cocok
Terkadang, masuk akal untuk menunjukkan beberapa baris di sekitar pola yang cocok. Untuk skenario seperti itu, kita dapat menggunakan -B
opsi perintah, yang ditampilkan N garis sebelum pola yang cocok.
Misalnya, perintah di bawah ini akan mencetak baris yang cocok dengan pola ini serta 2 baris sebelumnya.
$ egrep -b 2 -n Profesional Sampel.txtCetak garis sebelum pencocokan pola
Dalam contoh ini, kami telah menggunakan -N
Opsi untuk menampilkan nomor baris.
12. Cara menampilkan garis setelah pencocokan pola
Dengan cara yang sama, kita dapat menggunakan -A
opsi perintah untuk menampilkan baris setelah pencocokan pola. Misalnya, perintah di bawah ini akan mencetak baris yang cocok dengan pola ini serta 2 baris berikutnya.
$ egrep -a 2 -n Profesional Sampel.txtCetak garis setelah pencocokan pola
13. Cara menampilkan garis di sekitar pencocokan pola
Selain itu, Egrep perintah mendukung -C
opsi yang menggabungkan fungsionalitas opsi -A
Dan -B
, yang menampilkan garis sebelum dan sesudah pola yang cocok.
$ egrep -c 2 -n Profesional Sampel.txtCetak garis di sekitar pencocokan pola
14. Bagaimana menemukan pola dalam beberapa file secara rekursif
Seperti dibahas sebelumnya, kita dapat melakukan pencocokan pola pada beberapa file. Namun, situasinya menjadi rumit ketika file hadir di bawah beberapa sub-direktori dan kami meneruskan semuanya sebagai argumen perintah.
Dalam kasus seperti itu, kita dapat melakukan pencocokan pola dengan cara rekursif menggunakan -R
opsi seperti yang ditunjukkan pada contoh berikut.
Pertama, buat 2 sub-direktori dan salin Sampel.txt File ke dalamnya:
$ mkdir -p dir1/dir2 $ cp sampel.sampel txt dir1/ $ cp.txt dir1/dir2/
Sekarang, mari kita lakukan operasi pencarian dengan cara rekursif:
$ egrep -r profesional dir1Cari string secara rekursif dalam file
Dalam contoh di atas, kita dapat melihat bahwa kecocokan pola berhasil untuk dir1/dir2/sampel.txt Dan Dir1/Sampel.txt file.
15. Cara mencocokkan satu karakter menggunakan ekspresi reguler
Kita bisa menggunakan titik (.)
karakter untuk mencocokkan karakter tunggal kecuali untuk akhir baris. Misalnya, ekspresi reguler di bawah ini cocok dengan teks har, topi, dan memiliki:
$ egrep "ha." Sampel.txtCocokkan karakter tunggal dalam file
16. Cara mencocokkan nol atau lebih kejadian karakter
Kita bisa menggunakan tanda bintang (*)
untuk mencocokkan nol atau lebih kejadian karakter sebelumnya. Misalnya, ekspresi reguler di bawah ini cocok dengan teks yang berisi string Kami
diikuti oleh nol atau lebih kejadian karakter B
.
sampel $ egrep "web*".txtCocokkan string dalam file teks
17. Cara mencocokkan satu atau lebih kejadian dari karakter sebelumnya
Kita bisa menggunakan plus (+)
untuk mencocokkan satu atau lebih kejadian dari karakter sebelumnya. Misalnya, ekspresi reguler di bawah ini cocok dengan teks yang berisi string Kami
diikuti oleh setidaknya satu kejadian karakter B
.
sampel $ egrep "web+".txtCocokkan string demi karakter dalam file
Di sini, kita dapat melihat pencocokan pola itu tidak berhasil untuk kata -kata - Kami
Dan adalah
, karena tidak adanya karakter B
.
18. Cara mencocokkan awal garis
Kita bisa menggunakan caret (^)
untuk mewakili awal garis. Misalnya, ekspresi reguler di bawah ini mencetak garis yang dimulai dengan teks Kami
:
$ egrep "^we" sampel.txtCetak teks yang cocok dengan garis start
19. Bagaimana mencocokkan ujung garis
Kita bisa menggunakan dolar ($)
untuk mewakili akhir dari garis. Misalnya, ekspresi reguler di bawah ini mencetak garis yang diakhiri dengan teks e.
:
$ egrep "e.$ "Sampel.txtCetak teks yang cocok dengan garis akhir
20. Cara menghapus baris kosong dalam file
Kita bisa menggunakan caret (^)
segera diikuti oleh dolar ($)
untuk mewakili garis kosong. Mari kita gunakan ini dalam ekspresi reguler untuk menghapus garis kosong:
$ egrep -n -v "^$" Sampel.txtHapus baris kosong di file
Dalam output di atas, kita dapat melihat bahwa nomor baris 2, 4, 6, 8, dan 10 tidak ditampilkan karena kosong.
Kesimpulan
Dalam artikel ini, kami membahas beberapa contoh yang berguna dari Egrep perintah. Seseorang dapat menggunakan contoh-contoh ini dalam kehidupan sehari-hari untuk meningkatkan produktivitas.
Apakah Anda tahu contoh terbaik lainnya dari perintah egrep di Linux? Beri tahu kami pandangan Anda di komentar di bawah.
- « Terlarang - Anda tidak memiliki izin untuk mengakses / di server ini Kesalahan
- Cara menginstal dan mengonfigurasi firewall opnsense dasar »