Menemukan String atau Kata Tertentu pada File dan Direktori di Linux

Selasa, 26 Februari 2019

Menemukan String atau Kata Tertentu pada File dan Direktori di Linux. Sebenarnya saya sudah pernah membahas ini di artikel saya yang berjudul Mengenal Perintah Dasar Grep. namun mungkin karena banyak yang belum tau kalau mencari string itu menggunakan grep, masih ada yang nanya lewat fanspage bagaimana cara menemukan string tertentu pada file secara cepat.
Di Linux kita bisa memanfaatkan perintah grep untuk melaksanakan job tersebut. Saya sendiri sering menggunakannya untuk mencari script yang dirasa mencurigakan pada template nulled.


Oke, anggaplah disini saya memiliki direktori bernama tutorial, yangmana didalam direktori tersebut terdapat dua direktori lagi bernama dir1 dan dir2. Pada dir1 terdapat dua file yakni text.txt dan text.sh sementara di dir2 terdapat file text2.txt.


Nah, disini saya ingin mencari string atau kata "linuxsec" didalam file yang terletak di direktori tutorial. Karena mengecek file satu persatu membutuhkan waktu lama, kita gunakan grep saja.
grep -Rw . -e 'linuxsec'
Contoh output:
yuyudhn@LINUXSEC:~/tutorial$ grep -Rw . -e 'linuxsec'
./dir1/text.sh:linuxsec indonesia
./dir1/text.txt:welcome to linuxsec
./dir2/text2.txt:www.linuxsec.org

Nah, jika kita ingin menghiraukan besar kecilnya huruf, cukup tambahkan parameter -i di opsi. Atau bisa langsung digabung menjadi
grep -Rwi . -e 'linUxSec'
Contoh output:
yuyudhn@LINUXSEC:~/tutorial$ grep -Rwi . -e 'linUxSec'
./dir1/text.sh:linuxsec indonesia
./dir1/text.txt:welcome to linuxsec
./dir2/text2.txt:www.linuxsec.org

Jika kalian ingin mengetahui di line berapa kata tersebut muncul di file, bisa tambahkan -n.
grep -Rwin . -e 'linuxsec'
Contoh output:
yuyudhn@LINUXSEC:~/tutorial$ grep -Rwin . -e 'linuxsec'
./dir1/text.sh:1:linuxsec indonesia
./dir1/text.txt:1:welcome to linuxsec
./dir2/text2.txt:1:www.linuxsec.org
Diatas menunjukkan bahwa kata linuxsec terdapat di line pertama pada semua file.

Lalu bagaimana jika kita hanya ingin mencari string pada ekstensi file tertentu saja? Di contoh diatas ada dua ekstensi file yakni txt dan sh. Bagaimana jika kita hanya ingin mencari string pada file .txt saja?
Tambahkan parameter --include.
grep -Rwin --include=*.txt . -e 'linuxsec'
Contoh output
yuyudhn@LINUXSEC:~/tutorial$ grep -Rwin --include=*.txt . -e 'linuxsec'
./dir1/text.txt:1:welcome to linuxsec
./dir2/text2.txt:1:www.linuxsec.org

Mudah bukan? Sekian tutorial singkat kali ini, semoga bermanfaat. Jika ada yang kurang jelas silahkan ditanyakan.

Artikel Terkait Linux Basic ,Terminal ,Terminal Basic