grep command

Perintah GREP (Globally search a Regular Expression and Print) ini, untuk mencari string atau kata pada setiap baris data dalam sebuah file.

Perintah ini menggunakan Regex (Regular Expressions) dalam pencariannya dan menampilkan setiap baris kata sesuai dengan keyword yang cocok (match). Mode pencarian perintah grep adalah case-sensitive, jika ingin non case-sensitive maka kita hanya perlu menambahkan opsi “-i” setelah perintah grep.

Perintah grep sering digunakan oleh Admin Server (System Administrato), dan biasanya perintah ini digabungkan dengan perintah lain untuk mendapatkan hasil yang akurat.


Untuk memudahkan pembelajarannya, disarankan terlebih dahulu membuat file dengan nama latihangrep.txt lalu isi file tersebut dengan kalimat-kalimat dibawah ini :

Indonesia Tech
Linux
Debian Linux
Red Hat Linux
Centos Linux Tutorial
Linux indonesiatech 2017
indonesiatech 2017 tutorial
LiNux tutorial
linux
Tutorial Linux
2017
tutorial grep
2017 Mulai belajar linux

Sekarang kita coba lakukan pencarian kata atau string menggunakan perintah grep

1. Mencari dan menampilkan baris kata pada file latihan.txt dengan keyword “Linux” (case-sensitive)

# grep "Linux" latihangrep.txt

2. Mencari dan menampilkan baris kata pada file latihantech.txt dengan keyword “linux” (non case-sensitive)

# grep -i "Linux" latihangrep.txt

3. Mencari dan menampilkan baris kata yang mengandung angka 2 pada file latihangrep.txt

# grep "2" latihangrep.txt

4. Simbol $ (dollar) artinya mencari dan menampilkan baris kata yang sesuai dengan keyword, tapi menghiraukan kata-kata setelah keyword tersebut

# grep "2017$" latihangrep.txt

5. Simbol ^ (caret) artinya mencari dan menampilkan kata yang diawali dengan keyword tersebut

# grep "^Linux" latihangrep.txt
# grep -i "^Linux" latihangrep.txt

6. Mencari kata yang sesuai dengan keyword tanpa menampilkan kata-kata sebelum dan sesudah keyword

# grep -i "^Linux$" latihangrep.txt

7. Mencari dan menampilkan baris kata, jika dalam baris kata tersebut terdapat kata yang diawali dengan huruf “L”

# grep "L.*" latihangrep.txt

Note: tanda “.*” artinya 0 or more matches (mudahnya jika keyword ada yang cocok itu baik, tapi jika tidak cocok juga tak apa)

8. Mencari dan menampilkan yang pada awal baris kata tersebut terdapat kata yang diawali dengan huruf “L”

# grep "^L.*" latihangrep.txt

9. Mencari dan menampilkan kata yang diawali dengan keyword “L” dan diakhiri dengan “ux” pada file latihan.txt (non case-sensitive)

# grep -i "^L.*ux$" latihangrep.txt

10. Mencari dan menampilkan baris kata yang mengandung keyword “Red” atau “2014” (non case-sensitive)

# grep -i "[Red|2017]" latihangrep.txt

Parsing atau mengolah data log menggunakan perintah grep
Jika diantara anda ada yang berprofesi sebagai sistem administrator, tentunya anda dituntut untuk menjaga stabilitas dari server yang anda bangun. Diperlukannya monitoring terhadap server tersebut dan pasti untuk melihat apa yang terjadi, jika server tersebut terdapat masalah adalah dengan melihat log datanya.

Isi dari file log data tersebut bisa mencapai ribuan bahkan puluhan ribu baris atau lebih. Akan repot jika harus mengolah setiap baris tersebut satu-persatu. Oleh karena itu penggunaan perintah grep di linux memudahkan anda dalam pencarian log data yang anda inginkan. Berikut sedikit contoh penggunaannya.

Perhatian: Jika ingin melihat isi dari log data tersebut anda perlu login sebagai root atau superuser.

11. Mencari log data berdasarkan tanggal dari log tersebut

# grep -i "^Sep 18" /var/log/messages
# grep -i "^Sep.*18" /var/log/messages

12.Mencari log data berdasarkan tanggal dan menghitung ada berapa banyak jumlah baris dari log tersebut

# grep -i "^Sep 18" /var/log/messages | wc -l
# grep -i "^Sep.*18" /var/log/messages | wc -l

13. Mencari log data berdasarkan tanggal dan dari setiap baris tersebut dicari lagi kata yang berhubungan dengan keyword “kernel”

# grep -i "^Sep 18" /var/log/messages | grep -i "kernel"
# grep -i "^Sep.*18" /var/log/messages | grep -i "kernel"

14. Mencari log data berdasarkan tanggal dan berhubungan dengan keyword “kernel”, setelah itu pada setiap baris tersebut dicari lagi kata dengan keyword “RPC”

# grep -i "^Sep.*18" /var/log/messages | grep -i "kernel" | grep -i "RPC"

15. Mencari log data berdasarkan tanggal dan keyword “kernel”, lalu menghitung ada berapa banyak jumlah log tersebut

# grep -i "^Sep 18" /var/log/messages | grep -i "kernel" | wc -l
# grep -i "^Sep.*18" /var/log/messages | grep -i "kernel" | wc -l

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *