Cara menemukan string atau kata tertentu dalam file dan direktori

Cara menemukan string atau kata tertentu dalam file dan direktori

Apakah Anda ingin menemukan semua file yang berisi kata atau string teks tertentu di seluruh sistem Linux Anda atau direktori yang diberikan. Artikel ini akan memandu Anda tentang cara melakukannya, Anda akan belajar cara menggali secara rekursif melalui direktori untuk menemukan dan mendaftar semua file yang berisi string teks yang diberikan.

Cara sederhana untuk menyelesaikannya adalah dengan menggunakan alat pencarian pola GREP, adalah utilitas baris perintah yang kuat, efisien, andal, dan paling populer untuk menemukan pola dan kata-kata dari file atau direktori pada sistem seperti unix.

Baca juga: 11 perintah 'grep' Linux canggih di kelas karakter dan ekspresi braket

Perintah di bawah ini akan mencantumkan semua file yang berisi baris dengan teks "check_root”, Dengan mencari secara rekursif dan agresif ~/bin direktori.

$ grep -rw ~/ bin/ -e 'check_root' 
Temukan kata di direktori

Dimana -R opsi memberi tahu grep Untuk membaca semua file di bawah setiap direktori, secara rekursif, mengikuti tautan simbolik hanya jika mereka berada di baris perintah dan opsi -w menginstruksikannya untuk memilih hanya baris yang berisi kecocokan yang membentuk seluruh kata, dan -e digunakan untuk menentukan string (pola) yang akan dicari.

Anda harus menggunakan perintah sudo saat mencari direktori atau file tertentu yang memerlukan izin root (kecuali Anda mengelola sistem Anda dengan akun root).

 $ sudo grep -rw / -e 'check_root' 

Untuk mengabaikan perbedaan kasus menggunakan -Saya opsi seperti yang ditunjukkan:

$ grep -riw ~/ bin/ -e 'check_root' 

Jika Anda ingin mengetahui garis yang tepat di mana string teks ada, sertakan -N pilihan.

$ grep -rinw ~/ bin/ -e 'check_root' 
Temukan string dengan nomor baris

Dengan asumsi ada beberapa jenis file dalam direktori yang ingin Anda cari, Anda juga dapat menentukan jenis file yang akan dicari misalnya, dengan ekstensi mereka menggunakan --termasuk pilihan.

Contoh ini menginstruksikan grep untuk hanya melihat semua .SH file.

$ grep -rnw --include = \*.sh ~/ bin/ -e 'check_root' 

Selain itu, dimungkinkan untuk mencari lebih dari satu pola, menggunakan perintah berikut.

$ grep -rinw ~/ bin/ -e 'check_root' -e 'netstat' 
Temukan banyak kata dalam file

Itu dia! Jika Anda mengetahui trik baris perintah lain untuk menemukan string atau kata dalam file, bagikan dengan kami atau ajukan pertanyaan tentang topik ini, gunakan formulir komentar di bawah ini.