Cara menemukan semua file yang berisi teks tertentu di Linux
- 3040
- 34
- Dominick Barton
Tutorial ini akan mengajari Anda cara mencari file secara rekursif yang berisi string tertentu di Linux menggunakan baris perintah. Tutorial ini menggunakan perintah 'GREP' untuk mencari string di file. Atau, Anda dapat menggunakan perintah temukan untuk mencari file dengan konten tertentu.
Sintaks dasar untuk mencari teks dengan perintah grep:
grep -rl "pencarian -string"/path/to/serch/dir1 | grep -rl "pencarian -string"/path/to/serch/dir |
Perintah GREP menawarkan opsi berguna lainnya untuk menemukan teks tertentu dalam sistem file.
-R, --Rekursif
: Cari file secara rekursif-R,--Dereference-Recursive
: Cari file secara rekursif dan ikuti symlinks--termasuk = file_pattern
: Cari hanya file yang cocok dengan file_pattern--Kecualikan = File_Pattern
: Lewati file dan direktori yang cocok dengan file_pattern--Kecualikan-From = File
: Lewati file yang cocok dengan pola file apa pun dari file--Kecualikan-Dir = Pola
: Direktori pola yang cocok itu akan dilewati.-L, --Files-Without-Match
: Cetak nama file yang tidak cocok-L,-file-dengan-cocok
: Cetak string yang berisi nama file-Saya, --Ignore-Case
: Abaikan kasus string pencarian-e, --regexp = pola
: Gunakan pola untuk mencari atau menentukan beberapa string pencarian-W, --Word-Regexp
: memaksa untuk mencocokkan seluruh kata
Ada beberapa cara untuk menggunakan perintah grep untuk mencari teks. Mari kita bahas beberapa contoh pencarian teks/string di sistem file.
- Cari string tunggal di semua file
Perintah contoh di bawah ini akan mencari string "error" di semua file di /var /log direktori dan sub-direktorinya.
Cari teks spesifik di semua file menggunakan baris perintahgrep -rlw "error" /var /log
- Cari beberapa string di semua file
Itu
-e
Switch juga dapat digunakan untuk menemukan banyak string. Ini sebanding denganEgrep
program. Contoh di bawah ini akan mencari "Kesalahan" Dan "Peringatan" di semua file di /var/log direktori dan subdirektorinya.
Cari beberapa string di semua file dengan baris perintahgrep -rlw -e "error" -e "peringatan" /var /log
- Cari string di file tertentu
Anda dapat mencari string dalam file yang sesuai dengan kriteria nama file. Perintah berikut mencari "Kesalahan" dalam file dengan .catatan ekstensi di /var/log direktori dan sub-direktorinya.
grep -rlw --include = "*.log "-e" error " /var /log
- Mengecualikan beberapa file dari pencarian
Anda dapat menggunakan
--mengecualikan
Opsi di Find untuk mengecualikan beberapa file yang cocok dengan kriteria nama file tertentu. Misalnya, Anda dapat mengecualikan file dengan .txt perpanjangan.grep -rlw --exclude = "*.txt "-e" tecadmin " /var /log
- Mengecualikan beberapa direktori dari pencarian
Anda juga dapat melewatkan mencari direktori tertentu. Misalnya, jangan mencari file string di folder apa pun Apache2 atas namanya.
grep -rlw --Exclude-dir = "*apache2*" -e "tecadmin" /var /log
Kesimpulan
Anda telah belajar cara mencari teks tertentu dalam file pada sistem file linux dalam tutorial ini.