GNU/Linux >> Belajar Linux >  >> Linux

Perintah Grep di Linux/UNIX

Di Linux dan Unix Systems Grep, kependekan dari "global regular expression print", adalah perintah yang digunakan dalam mencari dan mencocokkan file teks yang terdapat dalam ekspresi reguler. Selanjutnya, perintah tersebut sudah diinstal sebelumnya di setiap distribusi Linux. Dalam panduan ini, kita akan melihat penggunaan perintah grep umum dengan beberapa contoh.

Perintah Grep di Linux

Perintah grep dapat digunakan untuk menemukan atau mencari ekspresi reguler atau string dalam file teks. Untuk mendemonstrasikannya, mari buat file teks welcome.txt dan tambahkan beberapa konten seperti yang ditunjukkan.


Welcome to Linux !
Linux is a free and opensource Operating system that is mostly used by
developers and in production servers for hosting crucial components such as web
and database servers. Linux has also made a name for itself in PCs.
Beginners looking to experiment with Linux can get started with friendlier linux
distributions such as Ubuntu, Mint, Fedora and Elementary OS.

Besar! Sekarang kita siap untuk melakukan beberapa perintah grep dan memanipulasi output untuk mendapatkan hasil yang diinginkan.

Untuk mencari string dalam file, jalankan perintah di bawah ini

Sintaks

$ grep "string" file name

ATAU

$ filename grep "string"

Contoh :

$ grep "Linux" welcome.txt

Keluaran

Seperti yang Anda lihat, grep tidak hanya mencari dan mencocokkan string “Linux” tetapi juga mencetak baris di mana string tersebut muncul.

Jika file terletak di jalur file yang berbeda, pastikan untuk menentukan jalur file seperti yang ditunjukkan di bawah ini

$ grep "string" /path/to/file

Mewarnai hasil Grep menggunakan opsi –warna

Jika Anda bekerja pada sistem yang tidak menampilkan string atau pola pencarian dalam warna yang berbeda dari teks lainnya, gunakan --color untuk membuat hasil Anda menonjol.

Contoh

$ grep --color "free and opensource" welcome.txt 

Keluaran

Mencari string secara rekursif di semua direktori

Jika Anda ingin mencari string di direktori Anda saat ini dan semua subdirektori lainnya, cari menggunakan - r bendera seperti yang ditunjukkan

$ grep -r "string-name" *

Misalnya

$ grep -r "linux" *

Keluaran

Mengabaikan sensitivitas huruf besar/kecil

Dalam contoh di atas, hasil pencarian kami memberi kami apa yang kami inginkan karena string "Linux" ditentukan dalam Huruf Besar dan juga ada di file dalam Huruf Besar. Sekarang mari kita coba dan cari string dalam huruf kecil.

$ grep "linux" file name

Tidak ada dari output, kan? Ini karena grep tidak dapat menemukan dan mencocokkan string “linux” karena huruf pertama adalah huruf kecil. Untuk mengabaikan sensitivitas huruf besar/kecil, gunakan -i tandai dan jalankan perintah di bawah ini

$ grep -i "linux" welcome.txt

Keluaran

Mengagumkan bukan? The - i biasanya digunakan untuk menampilkan string terlepas dari sensitivitas huruf besar/kecilnya.

Hitung baris di mana string dicocokkan dengan opsi -c

Untuk menghitung jumlah baris di mana pola string muncul atau berada, jalankan perintah di bawah ini

$ grep -c "Linux" welcome.txt

Keluaran

Menggunakan Grep untuk membalikkan Output

Untuk membalikkan output Grep , gunakan -v bendera. -v option menginstruksikan grep untuk mencetak semua baris yang tidak berisi atau cocok dengan ekspresi.

Opsi –v memberi tahu grep untuk membalikkan outputnya, yang berarti bahwa alih-alih mencetak garis yang cocok, lakukan yang sebaliknya dan cetak semua garis yang tidak cocok dengan ekspresi. Kembali ke file kita, mari kita tampilkan nomor baris seperti yang ditunjukkan.

Tekan ESC pada editor Vim, ketik titik dua penuh diikuti dengan

 set nu

Selanjutnya, tekan Enter

Keluaran

Sekarang, untuk menampilkan baris yang tidak mengandung string “Linux” jalankan

$ grep -v "Linux" welcome.txt

Keluaran

Seperti yang Anda lihat, grep telah menampilkan baris yang tidak berisi pola pencarian.

Beri nomor baris yang berisi pola pencarian dengan opsi -n

Untuk memberi nomor pada baris yang cocok dengan pola string , gunakan -n pilihan seperti yang ditunjukkan

$ grep -n "Linux" welcome.txt

Keluaran

Cari kata yang sama persis menggunakan opsi -w

Lewati -w flag akan mencari baris yang berisi kata yang sama persis seperti yang ditunjukkan

$ grep -w "opensource" welcome.txt

Keluaran

Namun, jika Anda mencoba

$ grep -w "open" welcome.txt

TIDAK ADA hasil yang akan dikembalikan karena kami tidak mencari pola tetapi kata yang tepat!

Menggunakan pipa dengan grep

Perintah grep dapat digunakan bersama dengan pipa untuk mendapatkan keluaran yang berbeda.

Misalnya, Jika Anda ingin tahu apakah paket tertentu diinstal di sistem Ubuntu, jalankan

$ dpkg -L | grep "package-name"

Misalnya, untuk mengetahui apakah OpenSSH telah diinstal di sistem Anda, pipa dpkg -l perintah untuk grep seperti yang ditunjukkan

$ dpkg -L | grep -i "openssh"

Keluaran

Menampilkan jumlah baris sebelum atau sesudah pola pencarian Menggunakan pipa

Anda dapat menggunakan -A atau -B untuk menampilkan jumlah baris yang mendahului atau datang setelah string pencarian. -A flag menunjukkan baris yang muncul setelah string pencarian dan -B mencetak output yang muncul sebelum string pencarian.

Misalnya

$ ifconfig | grep -A 4 ens3

Perintah ini menampilkan baris yang berisi string ditambah 4 baris teks setelah ens string di ifconfig perintah.

Keluaran

Sebaliknya, pada contoh di bawah, penggunaan flag -B akan menampilkan baris yang berisi string pencarian ditambah 3 baris teks sebelum ether string di ifconfig perintah.

Keluaran

$ ifconfig | grep -B 4 ether

Menggunakan grep dengan ekspresi reguler (REGEX)

Istilah REGEX adalah singkatan dari REG ular EX tekanan. REGEX adalah urutan karakter yang digunakan untuk mencocokkan pola. Berikut adalah beberapa contohnya:


^      Matches characters at the beginning of a line
$      Matches characters at the end of a line
"."    Matches any character
[a-z]  Matches any characters between A and Z
[^ ..] Matches anything apart from what is contained in the brackets

Contoh
Untuk mencetak baris yang diawali dengan karakter tertentu, sintaksnya adalah;

grep ^character file_name

Misalnya, untuk menampilkan baris yang dimulai dengan huruf “d” di file welcome.txt, kita akan mengeksekusi

$ grep ^d welcome.txt 

Keluaran

Untuk menampilkan garis yang diakhiri dengan huruf 'x' run

$ grep x$ welcome.txt

Keluaran

Mendapatkan bantuan dengan opsi Grep lainnya

Jika Anda perlu mempelajari lebih lanjut tentang penggunaan perintah Grep, jalankan perintah di bawah ini untuk mendapatkan pratinjau singkat dari flag atau opsi lain yang mungkin Anda gunakan bersama dengan perintah tersebut.

$ grep --help

Contoh Keluaran

Kami menghargai waktu Anda untuk melalui tutorial ini. Jangan ragu untuk mencoba perintahnya dan beri tahu kami bagaimana hasilnya.


Linux
  1. Perintah grep Linux

  2. Perintah mv Linux

  3. Linux du perintah

  1. Cara Menggunakan Perintah grep Di Linux/UNIX

  2. Perintah ip Linux

  3. Perintah cd Linux

  1. 14 Contoh Perintah Grep di Linux

  2. Perintah W di Linux

  3. Di Perintah di Linux