Anda di halaman 1dari 7

Mengenal lebih jauh perintah 'grep' di Linux By roemasa - Posted on 30 June 2010

Perintah 'grep' di Linux merupakan cara yang sangat ampuh untuk mencari file. Seperti halnya beberapa perintah baris (command line) lainnya, jika kita sudah terbiasa menggunakannya maka dapat kita rasakan betapa cepat penggunaan serta keakuratannya. Namun banyak para pengguna Linux hanya menggunakan satu atau dua pilihan saja yang terdapat dalam perintah 'grep'. Jika kita mau sedikit menelusuri lebih jauh tentang perintah 'grep' ini maka akan kita dapati betapa ampuhnya perintah 'grep'. Dibawah ini ada beberapa contoh penggunaan perintah 'grep'. Contohnya menggunakan file calendar, di Ubuntu, Mint dan Mac sudah terinstal secara default sedangkan untuk pengguna Fedora harus diinstal terlebih dahulu. Pencarian dasar Perintah 'grep' mencari hal-hal sebagai berikut: 1. Setiap pilihan yang mungkin akan kita gunakan untuk menyesuaikan pencarian. 2. String (atau pola) yang kita cari. 3. Lokasi dimana kita akan mencari - baik itu berupa file atau direktori. Contohnya kita bisa coba: jafar@roemasa:~$ grep first /usr/share/calendar/calendar.history 01/05 The FCC hears the first demonstration of FM radio, 1940 01/11 Milk delivered in bottles for first time, 1878 01/14 The first "Be-In" is held in Golden Gate Park, 1967 Perintah diatas kita gunakan untuk meminta 'grep' mencari semua string 'first' di file calendar.history.

Perintah 'grep' sangat sensitif sehingga perbedaan huruf besar dan kecil akan sangat berpengaruh. Bandingkan jika kita menjalankan: jafar@roemasa:~$ grep First /usr/share/calendar/calendar.history 01/01 First Rose Bowl; Michigan 49 Stanford 0, 1902 01/10 First meeting of United Nations General Assembly in London, 1946 01/28 First ski tow, Woodstock VT, 1914 Jika kita ingin mencari apapun, tanpa menghiraukan huruf besar atau kecil, gunakan pilihan -i setelah perintah grep. jafar@roemasa:~$ grep -i first /usr/share/calendar/calendar.history 01/01 First Rose Bowl; Michigan 49 Stanford 0, 1902 01/05 The FCC hears the first demonstration of FM radio, 1940 01/10 First meeting of United Nations General Assembly in London, 1946 Lalu bagaimana jika kita ingin mencari lebih dari satu file? Ubah path direktori dan gunakan pilihan -r sehingga 'grep' akan mencari secara keras di semua file dan subdirektori. Hasilnya seperti dibawah ini: jafar@roemasa:~$ grep -ir first /usr/share/calendar /usr/share/calendar/calendar.usholiday:09/MonFirst Labor Day in USA (1st Monday of September) /usr/share/calendar/calendar.usholiday:11/TueFirst Election Day in USA (1st Tuesday after 1st Monday for even years) /usr/share/calendar/calendar.usholiday:11/SunFirst Daylight Savings Time ends in USA; clocks move back (1st Sunday of November) Misalkan kita ingin mencari surat atau informasi yang pernah ada di komputer yang berhubungan dengan seseorang bernama Andi Surya dan kita yakin surat atau informasi tersebut ada di direktori home, maka kita dapat cari dengan menggunakan perintah ini: jafar@roemasa:~$ grep -r Surya /home/jafar Kustomisasi output kita Pilihan highlight dalam penggunaan perintah 'grep' dapat lebih mempermudah kita dalam melihat hasil pencarian:

jafar@roemasa:~$ grep -ri --color=auto war /usr/share/calendar/ /usr/share/calendar/de_DE/calendar.musik:03/01 Frederic Chopin in Zelazowa-Wola bei Warschau geboren, 1810 /usr/share/calendar/de_DE/calendar.geschichte: * 1800 bis zur Gegenwart; historische Ausstellung im Reichstagsgebude /usr/share/calendar/de_DE/calendar.geschichte:10/18 Wartburgfest der Deutschen Burschenschaften, 1817 Tampilan aslinya, kata 'war' akan terlihat merah dan untuk path direktori di depan/usr/share/calendar/de_DE/calendar.musik:03/01 berwarna jingga muda. Namun dengan perintah di atas malah akan ikut tampil juga baris 'Rod Stewart' padahal kita mungkin tidak menginginkannya. Jika kita tidak menginginkan itu dan hanya ingin melihat dimana saja kata-kata 'war' dalam bentuk aslinya, kita dapat menggunakan perintah: jafar@roemasa:~$ grep -riwc /usr/share/calendar/de_AT/calendar.feiertag:0 /usr/share/calendar/de_DE/calendar.musik:0 /usr/share/calendar/de_DE/calendar.kirche:0 war /usr/share/calendar

Kalau kita ingin mencari lebih dari satu kata, maka gunakan perintah seperti berikut: jafar@roemasa:~$ grep -ri 'civil war' /usr/share/calendar /usr/share/calendar/calendar.history:04/12 Confederate troops fire first shots of Civil War at Ft Sumter, 1861 /usr/share/calendar/calendar.history:05/22 US Civil War ends, 1865 Yang terakhir adalah jika kita ingin menyimpan hasil pencarian kita ke sebuah file, gunakan perintah berikut: jafar@roemasa:~$ grep -riw first /usr/share/calendar > /home/jafar/cari.txt Ingin tahu lebih jauh tentang perintah 'grep'? Silahkan buka halaman manualnya untuk membaca-baca: jafar@roemasa:~$ man grep Tekan 'q' untuk keluar dari mode membaca manual.

Atau untuk lebih jelas juga bisa gunakan: jafar@roemasa:~$ grep --help

Tutorial grep
Maret 15, 2012Akhmad KunTinggalkan komentarGo to comments

Perintah grep mencari baris dalam sebuah file yang mengandung string/katakata yang dicari. By default, grep menampilkan baris-baris yang match dengan string yang dicari. Gunakan grep untuk mencari baris-baris text yang match satu atau banyak regex (regular expression).

Syntax Grep
grep kata namafile grep kata1 kata2 namafile cat namafile | grep kata <perintah linux> | grep kata <perintah linux> <option> | grep kata

Grep untuk pencarian dalam file


Mencari baris-baris yang memiliki string boo dalam file /etc/passwd

Pencarian kata dengan tidak menghiraukan case string, misalnya boo, Boo, BOO dapat dilakukan dengan menggunakan option -i

Recursive grep
Kita dapat melakukan pencarian recursive, misal membaca setiap file dibawah direktori/home/akhmad/folder1 untuk mencari sebuah string boo. Hal ini dapat dilakukan dengan menambahkan option -r.

Pencarian grep untuk kata (bukan string)


Pencarian boo akan match dengan boo, fooboo, boo123, atau taboo. Kita dapat menggunakan option -w agar match pencarian berupa kata saja, bukan bagian kata.

Pencarian 2 kata yang berbeda


Gunakan egrep seperti berikut.

Menghitung jumlah baris yang match


Gunakan option -c untuk menghitung jumlah baris yang match dengan hasil pencarian

Kita juga bisa menggunakan option -n untuk menambahkan nomor baris pada output pencarian

Inverse match
Gunakan option -v untuk menghasilkan output pencarian yang tidak match dengan kata pencarian yang digunakan.

Grep dan pipa (|) linux/unix


Perintah grep seringkali digunakan dengan pipa linux, misalnya untuk mencari apakah ada proses mysql yang sedang berjalan.

Menampilkan model cpu.

Menampilkan nama file yang mengandung text pencarian


Gunakan option -l untuk menampilkan list nama-nama file yang match dengan pencarian.