GNU/Linux >> Belajar Linux >  >> Ubuntu

15 contoh penggunaan perintah Grep di Linux

Grep, atau Global Regular Expression Print, adalah perintah Linux yang sangat berguna untuk menemukan pola yang cocok. Itu dapat melihat melalui file dan direktori, dan membaca input dari perintah juga. Itu mencari dengan regex, atau ekspresi reguler dan mencetak baris dari file yang cocok dengan pola yang diberikan.

Dalam posting ini, kita akan melihat cara menggunakan perintah Grep di Linux. Perintah yang dibahas di sini telah diuji pada Ubuntu 20.04. Perintah Grep yang sama juga berfungsi untuk Debian, Mint, Fedora, dan CentOS.

Menginstal perintah grep

Sebagian besar distribusi Linux termasuk Ubuntu 20.04 LTS datang dengan grep terinstal. Jika sistem Anda tidak menginstal Grep, Anda dapat menginstalnya menggunakan perintah di bawah ini di Terminal:

$ Sudo apt-get install grep

Sintaks perintah grep

Sintaks dasar dari perintah Grep adalah sebagai berikut:

$ grep [options] PATTERN [FILE...]

Menggunakan Perintah Grep

Menemukan kata dalam file

Dengan Grep, Anda dapat mencari kata apa pun dalam file tertentu. Sintaksnya adalah:

$ grep <word> <filename>

Misalnya, perintah di bawah ini akan mencari kata “Donuts” di file “Donuts.txt”.

$ grep Donuts Donuts.txt

Menemukan kata dalam banyak file

Anda juga dapat mencari kata tertentu di beberapa file.

$ grep <word> <filename1> < filename2>

Misalnya, perintah di bawah ini akan mencari kata “Donuts” di “Donuts.txt” dan “cakes.txt”.

$ grep Donuts Donuts.txt cakes.txt

Mengabaikan kasus

Grep melakukan pencarian peka huruf besar/kecil secara default, ini berarti bahwa ia memperlakukan "Donat" dan "donat" secara berbeda. Jika kita menjalankan kembali perintah di atas dengan “donuts”, Anda tidak akan melihat output kali ini.

$ grep donuts Donuts.txt

Untuk mengabaikan kasus ini, Anda perlu menambahkan “-i ” ke perintah Anda seperti ini:

$ grep –i <word> <filename>

Menemukan file dengan ekstensi di direktori

Anda juga dapat menemukan file di direktori tertentu dengan ekstensinya. Gunakan sintaks berikut untuk melakukannya:

$ ls ~/<directory> | grep .<file type>

Misalnya, untuk menemukan semua file “.jpeg” di folder “Unduhan”, perintahnya adalah:

$ ls ~/Downloads | grep .jpeg

Mencetak garis yang tidak sesuai dengan pola

Dengan Grep, Anda juga dapat mencetak garis yang tidak sesuai dengan pola Anda dengan menambahkan “-v ” atas perintah Anda. Gunakan sintaks berikut untuk melakukannya:

$ grep -v <word> <filename>

Misalnya, perintah berikut akan mencetak semua baris kecuali yang mengandung kata “Donuts” di dalamnya.

Hanya mencetak kata yang cocok

Secara default, grep mencetak seluruh baris yang berisi pola. Untuk mencetak hanya kata yang cocok, tambahkan “-o ” atas perintah Anda.

$ grep -o <word> <filename>

Misalnya, perintah berikut hanya akan mencetak kata “Donuts” alih-alih mencetak seluruh baris dari file “Donuts.txt”.

Mencetak nomor baris dari pola dan garis yang cocok

Secara default, grep mencetak seluruh baris yang berisi pola. Untuk mencetak nomor baris dan baris yang berisi kata yang cocok, tambahkan “-n ” atas perintah Anda.

$ grep -n <word> <filename>

Misalnya, perintah berikut akan mencetak nomor baris dan baris yang berisi kata “Donat”.

$ grep -n Donuts Donuts.txt

Mencetak nama file yang cocok dengan pola

Untuk mencetak semua file di direktori Anda saat ini yang cocok dengan pola Anda, gunakan sintaks berikut:

$ grep -l “<word>” *

Misalnya, perintah berikut akan mencetak semua file yang berisi kata “Halo”:

$ grep -l “Hello” *

Mencetak seluruh kata yang cocok

Secara default, grep mencetak semua kata yang cocok dengan pola Anda, bahkan jika itu adalah bagian dari sebuah kata. Perhatikan gambar di bawah ini.

Kami menelusuri string “lakukan ” dan dapat melihat semua baris yang berisi “lakukan ”. Untuk mencocokkan kata yang tepat, tambahkan “-w ” atas perintah Anda.

$ grep –w <word> <filename>

Misalnya, untuk menelusuri kata yang tepat “lakukan ” di file Donuts.txt, perintahnya adalah:

$ grep -w do Donuts.txt

Seperti yang Anda lihat, sekarang hanya mencetak baris yang berisi kata persis “lakukan ”.

Mencocokkan baris yang dimulai dengan kata tertentu

Untuk mencetak baris yang dimulai dengan kata tertentu, tambahkan “^ ” atas perintah Anda.

$ grep ^<word> <filename>

Misalnya, perintah berikut akan mencetak semua baris yang dimulai dengan “Th ”.

$ grep ^Th Donuts.txt

Mencocokkan garis yang diakhiri dengan pola

Untuk mencetak garis yang diakhiri dengan pola tertentu, tambahkan “$ ” atas perintah Anda.

$ grep <word>$ <filename>

Misalnya, perintah berikut akan mencetak semua baris yang diakhiri dengan “t ”.

$ grep t$ Donuts.txt

Mencocokkan baris yang mengandung huruf tertentu

Jika Anda ingin mencari baris yang memiliki satu atau beberapa huruf di dalamnya, gunakan sintaks berikut:

$ grep “[<letters>]” <filename>

Misalnya, perintah berikut mencetak semua baris yang berisi huruf apa pun dari “a” hingga “f”.

$ grep “[a-f]” Donuts.txt

Penelusuran Rekursif

Untuk mencari semua file dalam direktori dan sub-direktori untuk pola atau kata tertentu, gunakan:

$ grep -R <word> <path>

Misalnya, perintah berikut akan mencantumkan semua file yang berisi kata "Halo" di direktori Documents. Pada output di bawah ini, Anda dapat melihat jalur file bersama dengan kata-kata yang cocok.

$ grep -R “Hello” /home/maryam/Documents

Mencetak baris tertentu sebelum/sesudah kata yang cocok

Secara default, Grep hanya mencetak garis yang cocok dengan pola tertentu. Dengan -A di Grep, Anda juga dapat memasukkan beberapa baris sebelum atau sesudah kata yang cocok.

Mencetak garis setelah pertandingan

Untuk mencetak baris yang berisi kata-kata yang cocok termasuk N jumlah baris setelah pertandingan:

$ grep -A <N> <word> <filename>

Misalnya, perintah berikut akan mencetak baris yang berisi kata “neraka” bersama dengan 1 baris setelahnya.

$ grep -A 1 hell Donuts.txt

Mencetak garis sebelum pertandingan

Untuk mencetak baris yang berisi kata-kata yang cocok termasuk N jumlah baris sebelum pertandingan:

$ grep -B <N> <word> <filename>

Misalnya, perintah berikut akan mencetak baris yang berisi kata “neraka” bersama dengan 1 baris sebelumnya.

$ grep -B 1 hell Donuts.txt

Mencetak baris sebelum dan sesudah pertandingan

Untuk mencetak baris yang berisi kata-kata yang cocok termasuk N jumlah baris sebelum dan sesudah pertandingan:

$ grep -C <N> <word> <filename>

Misalnya, perintah berikut akan mencetak baris yang berisi kata “neraka” beserta 1 baris sebelum dan sesudahnya.

$ grep -C 1 hell Donuts.txt

Menghitung jumlah kecocokan

Menggunakan -c opsi dengan grep, Anda dapat menghitung garis yang cocok dengan pola tertentu. Ingat, itu hanya akan cocok dengan jumlah baris, bukan jumlah kata yang cocok.

$ grep -c <word> <filename>

Misalnya, perintah berikut mencetak jumlah baris yang berisi kata “Donat”.

$ grep -c Donuts Donuts.txt

Perhatikan bahwa file kita “Donuts.txt” berisi 4 “Donat”, tetapi -c hanya mencetak hitungan sebagai 3. Itu terjadi karena ia menghitung jumlah baris, bukan jumlah kecocokan.

Untuk informasi lebih lanjut tentang grep, gunakan perintah di bawah ini:

$ grep --help

atau kunjungi halaman manual menggunakan perintah di bawah ini:

$ man grep

Ini akan membawa Anda ke halaman manual Grep.

Itu saja! Dalam posting ini, kami telah menjelaskan sintaks dasar dan penggunaan perintah grep di Linux. Kami juga melalui beberapa opsi baris perintah untuk memperluas kegunaannya. Jika Anda mengetahui beberapa kegunaan lain dari perintah Grep di Linux yang kami lewatkan, kami ingin mengetahuinya melalui komentar di bawah.

Jelajahi artikel terkait ini untuk mengetahui bagaimana Anda dapat menemukan file dan direktori di Linux.


Ubuntu
  1. 5 Contoh Perintah Fuser Linux Praktis

  2. 8 Contoh Perintah Linux TR

  3. Contoh penggunaan perintah dmsetup di Linux

  1. Contoh Perintah rm di Linux

  2. Contoh Perintah ps di Linux

  3. sa Contoh Perintah di Linux

  1. w Contoh Perintah di Linux

  2. Contoh Perintah ac di Linux

  3. Contoh Perintah df di Linux