Cara Menggunakan Perintah Grep di Linux

Memahami perintah grep dengan contoh praktis untuk memfilter dan menampilkan konten file dengan mudah

GREP adalah singkatan dari ‘Global Regular Expression Print’. Ini adalah utilitas baris perintah yang berguna yang disediakan oleh Linux, untuk mencari baris teks yang cocok dengan pola yang disediakan oleh pengguna.

grep mengambil input dari pengguna dalam bentuk string atau kata-kata yang ingin dicari pengguna dalam file tertentu. Perintah kemudian memeriksa file yang ditentukan oleh pengguna untuk pola ini dan kemudian mengembalikan baris yang cocok dengan pola yang disediakan.

Itu melakukan pekerjaan yang sangat baik dengan memfilter konten file sehingga membuat tugas kita lebih mudah untuk mencari konten tertentu pada satu atau beberapa file secara bersamaan.

Pada artikel ini, mari kita tinjau fungsi perintah grep dengan beberapa contoh praktis secara mendetail.

Opsi tersedia dengan perintah grep

Ini adalah beberapa opsi dasar yang akan sering Anda gunakan dengan perintah grep.

Pilihan

Keterangan

-Saya

Untuk pencarian peka huruf besar/kecil

-R

Untuk mencari semua file secara rekursif di direktori yang ditentukan dan subdirektorinya

-C

Untuk menampilkan berapa kali sebuah string muncul

-v

Untuk menampilkan garis yang tidak cocok

-w

Filter untuk kata tertentu yang digunakan secara terpisah

Menggunakan perintah grep

perintah grep biasanya digunakan dengan utilitas pipa ( | ). Itu dapat diimplementasikan dengan pipa shell ketika Anda ingin menggunakannya dengan beberapa perintah Linux lainnya. Meskipun, grep juga dapat digunakan secara individual tanpa utilitas pipa ( | ).

Mari kita lihat beberapa sintaks dasar dari perintah grep dengan dan tanpa utilitas pipa.

Mari saya tunjukkan terlebih dahulu contoh file teks yang akan saya gunakan untuk mengilustrasikan perintah grep.

INDIA ADALAH NEGARA YANG INDAH DARI ORANG-ORANG CINTA DAMAI. India berdiri di atas tiga pilar legislatif, eksekutif dan yudikatif. India Adalah Negara Yang Indah Dari Orang-Orang Yang Mencintai Perdamaian. India peduli pada orang-orang karena sumber dayanya koordinat kartesius pentingnya semua koordinat kartesius. Berikut ini adalah dua baris kosong. penggunaan gerobak sapi adalah pemandangan umum di desa untuk pekerjaan agraria. Ini adalah akhir dari file sampel.

grep digunakan dengan utilitas pipa ( | )

perintah grep dapat diimplementasikan bersama dengan perintah Linux lainnya menggunakan pipa shell. Seperti, menggunakan perintah cat untuk menampilkan konten file tetapi pada saat yang sama menyalurkan output menggunakan perintah grep untuk hanya menampilkan konten yang ingin Anda lihat. Ini akan lebih jelas ketika kita melalui contoh.

Sintaks :

[perintah] | grep [string]

Contoh :

sampel kucing.txt | grep legislatif

Di sini, saya telah menggunakan perintah cat untuk menampilkan beberapa baris dari file ‘sample.txt’. Hanya baris-baris itu yang akan ditampilkan yang mengandung kata ‘legislatif’ di dalamnya dan mengabaikan baris-baris lainnya.

keluaran :

[ dilindungi email ] :~/workspace$ cat sample.txt | grep legislature india berdiri di atas tiga pilar yaitu legislatif, eksekutif dan yudikatif. [ dilindungi email ] :~/ruang kerja$

grep digunakan tanpa utilitas pipa ( | )

grep bahkan dapat digunakan secara langsung sebagai perintah individu tanpa menggunakan utilitas pipa ( | ).

Sintaks :

grep [string_to_be_searched] [nama file]

Contoh :

grep India sample.txt

keluaran :

India Adalah Negara Yang Indah Dari Orang-Orang Yang Mencintai Perdamaian. India peduli pada orang-orang sebagai sumber dayanya

Jadi, saya telah menggunakan perintah grep secara langsung untuk memfilter baris yang berisi string ‘India’ dari file teks ‘sample.txt’.

Pencarian case-insensitive menggunakan perintah grep

Linux sangat berhati-hati dengan case-sensitivity ketika kita menjalankan perintah di terminal. Ini mengharuskan pengguna untuk berhati-hati tentang kasus string yang dimasukkan ke dalam perintah.

Mari kita lihat ini melalui sebuah contoh.

grep perdamaian sample.txt

Dalam hal ini, kita tidak akan mendapatkan output karena tidak ada kata ‘peace’ dalam file sampel. Kita memiliki kata ‘Damai’ dengan huruf kapital ‘P’. Kata itu sama tetapi ketika kita menggunakan perintah grep tanpa opsi apa pun, kata itu akan mencari kecocokan yang tepat dalam file, mengabaikan perubahan apa pun dalam huruf besar-kecil.

Untuk menghindari ambiguitas ini, Anda cukup menggunakan opsi -i yang secara harfiah memberi tahu perintah grep “lupakan kasus yang saya masukkan stringnya, dan cari saja semua pola yang cocok dalam file.”

Sintaksis:

grep -i [string] [nama file]

Contoh :

grep -i peace sample.txt

keluaran :

INDIA ADALAH NEGARA YANG INDAH DARI ORANG-ORANG CINTA DAMAI. India Adalah Negara Yang Indah Dari Orang-Orang Yang Mencintai Perdamaian.

Semua baris yang cocok ditampilkan terlepas dari kasus di mana string yang cocok berada.

Pencarian rekursif menggunakan perintah grep

r pilihan akan mencari semua file dalam direktori dan semua sub-direktori yang sesuai pola string yang disediakan oleh pengguna dalam perintah.

Sintaks :

grep -i -r [string] [file_path]

Contoh :

grep -i -r Tomcat /home/gaurav/workspace

String di sini adalah ‘Tomcat’ dan akan dicari di ruang kerja direktori. Semua subdirektori dan file di direktori ‘ruang kerja’ juga akan dipindai agar sesuai dengan pola string yang disediakan.

keluaran :

./context_log.policy:// catalina.policy – Izin Kebijakan Keamanan untuk Tomcat 7./context_log.policy:// Catatan: Jika Tomcat-juli.jar ada di ${catalina.base} dan bukan di ${catalina.home },./context_log.policy:// grant codeBase “file:${catalina.base}/bin/tomcat-juli.jar” {..}./context_log.policy:grant codeBase “file:${catalina.home }/bin/Tomcat-juli.jar” {./context_log.policy: izin java.lang.RuntimePermission “accessClassInPackage.org.apache.tomcat.websocket.server”;./context.xml: <!– Batalkan komentar ini untuk menonaktifkan persistensi sesi saat Tomcat memulai ulang –>./catalina.properties:# – Tomcat Bootstrap JAR./catalina.properties:# – Tomcat API JAR./catalina.properties: # – JAR Tomcat./catalina.properties:# – JAR non-Tomcat umum./catalina.properties:org.apache.catalina.startup.TldConfig.jarsToSkip=tomcat7-websocket.jar./catalina.properties:tomcat.util. buf.StringCache.byte.enabled=true./catalina.properties:#tomcat.util.buf.StringCache.char.enabled=true./catalina.properties:#tomcat.util.buf.StringCache.trainThreshold=500000./catalina.properties:#tomcat.util.buf.StringCache.cacheSize=5000./server.xml: pathname=”conf/tomcat-users.xml” />./server.xml: <Nama pelaksana=”tomcatThreadPool” namePrefix=” catalina-exec-“./server.xml: <Connector executor=”TomcatThreadPool”./server.xml: setiap permintaan. Implementasi Engine untuk Tomcat berdiri sendiri./tomcat-users.xml:<tomcat-users>./tomcat-users.xml: <user username=”role1″ password=”tomcat” role=”role1″/>./tomcat -users.xml:</tomcat-users>./web.xml: <!– dimuat ke dalam instance Tomcat ini. Karena setiap aplikasi –>./web.xml: <!– digunakan oleh Tomcat untuk mendukung halaman JSP. Secara tradisional, servlet ini –>

CATATAN : Saat menggunakan opsi -r dengan perintah grep, kita perlu menyediakan jalur file dan bukan nama file

Mencari seluruh kata hanya dengan perintah grep

Banyak kali kasusnya adalah Anda akan mencari satu kata tetapi Anda akhirnya akan mengisi terminal Anda dengan baris yang cocok yang memang berisi kata yang cocok tetapi tidak sebagai kata individual. Anda mungkin melihat baris yang berisi beberapa kata yang subbagiannya adalah string yang telah Anda masukkan.

Bingung dengan ini? Jangan khawatir, itu jauh lebih mudah dipahami setelah Anda mendapatkan contoh.

Contoh :

Di sini, saya ingin mencari satu kata ‘cart’ dan menampilkan semua baris yang cocok dengan kata ini dalam file ‘sample.txt’.

grep -i cart sample.txt

keluaran :

Koordinat Cartesian pentingnya semua koordinat Cartesian. penggunaan gerobak sapi adalah pemandangan umum di desa untuk pekerjaan agraris. Gerobak hilang saat anak laki-laki itu melepaskannya.

Pada output, Anda dapat mengamati bahwa kata ‘Cartesian’ juga mengandung kata ‘cart’ dan karenanya, baris yang mengandung kata ‘Cartesian’ juga ditampilkan meskipun kita tidak ingin menampilkannya.

Anda dapat menggunakan opsi -w dengan perintah grep untuk mengatasi ambiguitas ini.

Sintaks :

grep -i -w [string] [nama file]

Contoh :

grep -i -w cart sample.txt

keluaran :

penggunaan gerobak sapi adalah pemandangan umum di desa untuk pekerjaan agraria. Kereta itu hilang saat anak laki-laki itu melepaskannya.

Sekarang, ketika Anda telah menggunakan opsi – w dengan grep Anda hanya akan mendapatkan baris di mana kata ‘cart’ digunakan secara keseluruhan.

Pencarian terbalik menggunakan perintah grep

perintah grep juga dapat digunakan secara terbalik. Kita dapat menggunakan perintah grep sebaliknya dengan menyembunyikan baris yang cocok dan hanya menampilkan baris yang tidak cocok. Anda dapat melakukan ini menggunakan opsi -v dengan perintah grep.

Sintaks :

grep -i -v [string] [nama file]

Contoh :

grep -i -v resource sample.txt

keluaran :

INDIA ADALAH NEGARA YANG INDAH DARI ORANG-ORANG CINTA DAMAI. India berdiri di atas tiga pilar legislatif, eksekutif dan yudikatif. India Adalah Negara Yang Indah Dari Orang-Orang Yang Mencintai Perdamaian. koordinat kartesius pentingnya semua koordinat kartesius. penggunaan gerobak sapi adalah pemandangan umum di desa untuk pekerjaan agraria. Ini adalah akhir dari file sampel.

Di output, semua baris lain ditampilkan selain baris yang berisi kata ‘sumber daya’.

Menghitung kemunculan string yang cocok

Output dari perintah grep biasanya sangat panjang jika data dalam file tersebut luas. Semakin banyak kecocokan, semakin lama output dari perintah grep. Linux memberi Anda opsi di mana Anda dapat menampilkan jumlah kemunculan kecocokan.

Sintaks :

grep -i -c [string] [nama file]

Contoh :

grep -i -c india sample.txt

keluaran :

[email protected] :~/workspace$ grep -i -c india sample.txt 4 [email protected] :~/workspace$

Di sini, outputnya adalah angka yang merupakan jumlah kemunculan kata ‘India’ dalam file sample.txt.

CATATAN : Saya telah menggunakan opsi -i di setiap contoh agar aman dengan masalah sensitivitas huruf besar-kecil. Jika Anda yakin tentang kasus kata yang Anda cari, maka Anda dapat dengan aman menghilangkan opsi -i.

Kesimpulan

Kita telah mempelajari penggunaan dasar perintah grep pada sistem Linux dalam tutorial ini. Kita juga belajar menampilkan berbagai konten yang paling sesuai dengan kebutuhan kita dan tidak memadati terminal dengan banyak antrean. perintah grep pasti akan menghemat waktu jika digunakan untuk memindai kumpulan data besar.

Related Posts