Bagaimana cara mencari file yang mengandung kata tertentu?


37

Bagaimana cara mencari file yang mengandung kata tertentu?


5
Apakah maksud Anda mencari file NAMES yang berisi kata tertentu di dalamnya? yaitu: semua file yang memiliki istilah FUN dalam namanya,, FUN_time.txt FUN_stuff.txt Atau cari DI DALAM file untuk kata-kata tertentu?
dr_willis

Jawaban:


51

Dengan baris perintah Anda memiliki beberapa opsi. 3 yang paling saya gunakan adalah ...

  1. locate {part_of_word}

    Ini mengasumsikan database lokasi Anda mutakhir tetapi Anda dapat memperbarui ini secara manual dengan: sudo updatedb

  2. grepseperti yang dijelaskan oleh dr_willis. Satu komentar: -Rsetelah grepjuga mencari di dalam direktori. Contoh:

    cd\
    grep -R {something_to_look_for} {where_to_look_in}
    
  3. find . -name '*{part_of_word}*' -print

Di .mana direktori tempat Anda berada saat ini dan *merupakan wildcard.

Oh dan Anda juga bisa menggabungkan ini. Contoh: locate {something}|grep {some_part_of_something}|more

Jika saya ingat dengan benar: locateadalah yang tercepat (dengan asumsi database Anda mutakhir) dan findmerupakan yang paling lambat. Dan grepini adalah yang paling kompleks tetapi juga yang paling serbaguna karena Anda dapat menggunakan regex.



4

Perintah grep biasanya digunakan untuk ini.

grep POLTEN nama file

dan grep dapat melakukan pencarian yang sangat kompleks.

willis@Cow:~$ grep --help
Usage: grep [OPTION]... PATTERN [FILE]...
Search for PATTERN in each FILE or standard input.
PATTERN is, by default, a basic regular expression (BRE).
Example: grep -i 'hello world' menu.h main.c

3
atau Anda dapat melakukan "kata rgrep." untuk secara rekursif mencari setiap file dan subdirektori untuk "kata"
Jeremy Bicha

4

Anda dapat menggunakan grepdaftar file-file yang ada worddalam yang diberikan directory:

grep -Ril word directory

Di sini:
* -Rmencari file secara rekursif dalam sub-direktori.
* -iAbaikan case teks
* -ltampilkan nama file alih-alih bagian isi file. (catatan: -Lmenunjukkan nama file yang tidak mengandung kata).

gunakan man grepuntuk mendapatkan semua opsi


3
Asal tahu saja: -ilakukan pencarian yang tidak peka terhadap huruf besar-kecil.
David Foerster
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.