grep

Perintah grep Linux

Perintah grep Linux
Grep adalah salah satu alat paling praktis yang dapat Anda miliki. Utilitas baris perintah ini melakukan pencarian dalam kumpulan data teks biasa. Grep sebenarnya adalah singkatan dari “gpencarian lokal a rbiasa eekspresi dan pcetak”. Grep memulai perjalanannya sebagai bagian dari keluarga UNIX. Seiring waktu, sekarang tersedia untuk semua platform populer seperti Linux, Mac, BSD, dan bahkan Windows!

Apakah Anda pernah menggunakan grep sebelumnya?? Sebagian besar waktu, trik grep dasar dapat melakukan sebagian besar pekerjaan. Namun, grep menawarkan banyak cara untuk melakukan pencarian dan menyempurnakan output ke versi yang lebih bermanfaat. Pada artikel ini, mari kita lihat penggunaan perintah grep.

Penggunaan grep

Memverifikasi keberadaan

Jika Anda menjalankan distro Linux apa pun, maka Anda sudah menginstal grep. Jalankan perintah berikut di terminal.

grep --versi

Perintah ini digunakan untuk menampilkan versi grep yang saat ini diinstal. Sekarang, kita membutuhkan file demo. Dalam kasus saya, saya akan membuat file teks yang menyertakan semua paket yang terinstal di sistem saya.

Dasar-dasar

Penggunaan dasar grep mengikuti struktur berikut:.

grep

Atau, untuk lebih mudah memahami, gunakan yang ini.

grep -e -f

Dalam hal ini, grep akan melakukan pencarian di file dan mencetak semua baris yang menyertakan pola (istilah pencarian).

grep python ~/Desktop/PackageList.txt

Grep mencari file “PackageList.txt" Saya buat sebelumnya dan mencetak semua baris yang menyertakan "python".

Operasi yang sama ini dapat dilakukan dengan cara lain. Perhatikan contoh berikut.

cat ~/Desktop/PackageList.txt | grep python

Di sini, menggunakan perintah "cat", saya mengirim konten file "PackageList".txt” ke grep. Menggunakan output cat, grep melakukan pencarian dan mencetak baris yang berisi istilah pencarian.

Sekarang datang hal yang menyenangkan. Anda benar-benar dapat menumpuk beberapa perintah grep begitu saja.

cat ~/Desktop/PackageList.txt | grep - | grep p | grep python

Filter grep pertama ke baris dengan tanda hubung, filter kedua ke baris dengan p, dan filter grep terakhir ke baris dengan python. Masuk akal?

Sensitivitas kasus

Saat melakukan pencarian, sensitivitas huruf menjadi pertanyaan utama. Secara default, grep peka huruf besar-kecil.

Misalnya, mencari "Python" tidak akan menampilkan hasil apa pun.

cat ~/Desktop/PackageList.txt | grep Python

Untuk membuat grep case "tidak sensitif", tambahkan opsi berikut:.

cat ~/Desktop/PackageList.txt | grep -i Python

Pencarian file

Katakanlah Anda memiliki direktori dengan banyak file teks. Tujuan Anda adalah untuk mengidentifikasi file yang berisi atau tidak berisi pola (istilah pencarian).

Saya menemukan metode ini cukup membantu ketika mencari di dalam tumpukan file log. Karena saya tidak punya waktu untuk membuka dan memeriksa setiap file secara manual, saya punya grep untuk melakukan pekerjaan itu untuk saya.

Untuk membuat daftar file yang berisi kecocokan, gunakan tanda “-l”.

grep -l /cari/direktori/*

Seperti yang disarankan oleh hasilnya, istilah "python" hadir di semua 3 file yang ada di direktori "Desktop".

Untuk membuat daftar file tanpa kecocokan, gunakan tanda “-L”.

grep -L /cari/direktori/*

“Tidak Cocok.txt" adalah satu-satunya file yang tidak mengandung istilah "python".

Pencarian terbalik

Perilaku default grep adalah mencetak hanya garis dengan pola yang cocok, kan? Saatnya membalikkan proses. Kali ini, kami hanya akan mencetak garis TANPA pola yang cocok.

Cukup berikan opsi "-v" ke grep.

cat ~/Desktop/PackageList.txt | grep -i -v Python

Mencetak garis sebelum/sesudah pertandingan

Secara default, grep hanya akan mencetak baris yang cocok dengan pola pencarian. Dengan menggunakan teknik ini, Anda dapat memberi tahu grep untuk mencetak baris sebelum/sesudah pertandingan juga.

Untuk mencetak garis sebelum pertandingan, gunakan struktur berikut:.

grep -B

Di sini, 5 adalah garis angka yang akan dicetak grep SEBELUM garis yang cocok.

Untuk mencetak garis setelah pertandingan, gunakan yang berikut ini.

grep -A

Bagaimana dengan mencetak sebelum dan sesudah garis yang cocok?? Dalam hal ini, gunakan bendera “-C”.

grep -C

Nomor baris

Ketika grep menunjukkan output, itu tidak menyebutkan nomor baris. Untuk nomor baris terkait, gunakan tanda “-n”.

grep -n

Kata tunggal

Jika flag “-w” digunakan, grep akan memperlakukan pola sebagai keseluruhan kata.

grep -w

Membatasi pencarian grep

Grep memungkinkan menentukan jumlah baris untuk mencari di file. Metode ini berguna jika Anda berurusan dengan file besar (seperti log sistem). Gunakan bendera “-m”.

grep -m

Pencarian rekursif

Ini adalah salah satu fitur paling bermanfaat yang ditawarkan grep untuk penggunaan berat. Grep dapat mencari direktori secara rekursif dan menemukan semua kecocokan dari semua file yang dihadapinya.

grep -R

Atau,

grep -r

Saya sering menemukan menggunakan fungsi rekursif ini bersama dengan flag “-l”.

Modus senyap

Grep dapat dijalankan dalam mode "tenang". Saat berjalan dalam mode "tenang", grep tidak akan mencetak output apa pun ke terminal. Sebagai gantinya, itu akan mengembalikan 0 (setidaknya, kecocokan ditemukan) atau 1 (tidak ditemukan kecocokan).

grep -q
gema $?

ekspresi reguler

Grep juga memungkinkan pencarian regex (ekspresi reguler). Ini menambah tingkat kerumitan dan kegunaan grep yang sama sekali baru sebagai alat pencarian.

Misalnya, Anda dapat menggunakan tanda kurung untuk mencari "terlalu" dan "dua" secara bersamaan.

cat ~/Desktop/gpl-3.0.txt | grep t[wo]o

Contoh berikut ini hanya akan mencetak baris jika kecocokan terjadi di awal baris.

grep ^GNU ~/Desktop/gpl-3.0.txt

Untuk mencocokkan endingnya, gunakan yang ini.

grep you$ ~/Desktop/gpl-3.0.txt

Jika Anda ingin menggunakan Perl regex, gunakan flag “-P”. Ini akan memperlakukan polanya sebagai Perl regex.

grep -P

Pikiran terakhir

Grep menawarkan banyak cara untuk menyesuaikan fungsi pencarian. Ketersediaan regex membuka cakrawala baru untuk potensi penggunaan grep. Yang keren adalah, Anda dapat menggunakan regex umum dan Perl; mana pun yang Anda rasa nyaman.

Untuk penjelasan paling detail, selalu lihat halaman manual.

pria grep gr

Bersulang!

Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Jika Anda suka bermain game di Linux dengan gamepad alih-alih sistem input keyboard dan mouse biasa, ada beberapa aplikasi yang berguna untuk Anda. Ba...
Alat Berguna untuk Gamer Linux
Jika Anda suka bermain game di Linux, kemungkinan besar Anda telah menggunakan aplikasi dan utilitas seperti Wine, Lutris, dan OBS Studio untuk mening...
Game Remaster HD untuk Linux yang Belum Pernah Rilis Linux Sebelumnya
Banyak pengembang dan penerbit game datang dengan remaster HD dari game lama untuk memperpanjang umur waralaba, harap penggemar meminta kompatibilitas...