Temukan semua file yang berisi teks tertentu

Temukan semua file yang berisi teks tertentu

Anda mungkin sudah tahu cara menggunakan grep Perintah untuk mencari string teks di file di Linux. Tetapi bagaimana jika Anda ingin mengambil daftar file yang berisi string teks? Ini adalah tugas yang paling cocok untuk grep atau perintah temukan. Kami akan menunjukkan kepada Anda bagaimana melakukannya di panduan ini.

Dalam tutorial ini Anda akan belajar:

  • Cara Penggunaan grep Dan menemukan Perintah untuk menemukan semua file yang berisi teks tertentu
Temukan semua file yang berisi teks tertentu Persyaratan Perangkat Lunak dan Konvensi Baris Perintah Linux
Kategori Persyaratan, konvensi atau versi perangkat lunak yang digunakan
Sistem Distro Linux apa pun
Perangkat lunak N/a
Lainnya Akses istimewa ke sistem Linux Anda sebagai root atau melalui sudo memerintah.
Konvensi # - mensyaratkan perintah linux yang diberikan untuk dieksekusi dengan hak istimewa root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo memerintah
$ - mensyaratkan perintah Linux yang diberikan untuk dieksekusi sebagai pengguna biasa

Cari teks tertentu dengan perintah grep



Tanpa keraguan, grep adalah perintah terbaik untuk mencari file (atau file) untuk teks tertentu. Secara default, ia mengembalikan semua baris file yang berisi string tertentu. Perilaku ini dapat diubah dengan -l opsi, yang menginstruksikan grep untuk hanya mengembalikan nama file yang berisi teks yang ditentukan.

Sekarang mari kita lihat ini beraksi. Gunakan sintaks berikut di terminal, dan tentukan semua file yang ingin Anda cari dengan menambahkan jalur dan nama mereka ke akhir perintah.

$ grep -l contoh dokumen1.Dokumen txt2.txt 
Menggunakan grep untuk menemukan file mana yang berisi teks yang ditentukan

Output dari grep menunjukkan kepada kita bahwa string pencarian kami "contoh" hanya ada di dokumen1.txt mengajukan. Juga, jangan lupa bahwa wildcard diizinkan dan dapat membantu membuat grep lebih hemat:

$ grep -l contoh *.txt 

Tapi mari kita realistis. Jika Anda hanya mencari beberapa file, Anda mungkin tidak akan membaca panduan ini. Kemungkinan besar, Anda memiliki direktori (atau beberapa direktori) penuh dengan file yang perlu Anda cari. Itu tidak masalah untuk grep selama Anda memasukkan -R Opsi (rekursif) dalam perintah.

$ grep -lr contoh/path/to/directory1/*.txt/path/to/directory2 

Atau, untuk mencari direktori saat ini dan semua subdirektori, menghilangkan jalan di akhir perintah.

$ grep -lr contoh 
Menggunakan grep untuk mencari secara rekursif

Pertimbangkan juga menggunakan -Saya opsi, yang membuat case string pencarian Anda tidak sensitif. Untuk belajar tentang sisa grep Fungsi perintah secara rinci, lihat Panduan Pengantar Grep kami. Halaman pria juga berisi informasi yang bermanfaat:

$ grep pria 

Cari teks tertentu dengan perintah temukan

Jika Anda lebih suka menggunakan menemukan Perintah, Anda dapat menggunakan sintaks perintah berikut:

$ find/path/to/search -type f -exec grep -l "your -search -string"  \; 
Menggunakan perintah temukan untuk mencari file yang berisi string teks

Sekali lagi, tambahkan -Saya ke grep bagian dari perintah untuk mengabaikan kasus. Itu menemukan Dan grep metode keduanya bekerja dengan baik. Gunakan yang mana yang Anda sukai.

Kesimpulan

Dalam panduan ini, kami melihat cara menemukan semua file yang berisi teks tertentu di Linux. Kami mempelajari dua metode baris perintah untuk menyelesaikan tugas, tetapi lebih banyak lagi ada.

Tutorial Linux Terkait:

  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Perintah Linux Dasar
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Perintah Linux: 20 perintah terpenting teratas yang Anda butuhkan untuk…
  • Cara menemukan string atau teks dalam file di linux
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 22.04 Jammy Jellyfish…
  • Instal Arch Linux di VMware Workstation
  • Ubuntu 20.04 Panduan
  • Hal -hal yang harus diinstal pada Ubuntu 22.04