Belirli bir kelimeyi içeren dosyaları nasıl arayabilirim?
Belirli bir kelimeyi içeren dosyaları nasıl arayabilirim?
Yanıtlar:
Komut satırıyla birkaç seçeneğiniz vardır. En çok kullandığım 3 ...
locate {part_of_word}
Bu konum bulma veritabanınızın güncel olduğunu varsayar, ancak bunu şu şekilde el ile güncelleyebilirsiniz: sudo updatedb
grep
dr_willis tarafından açıklandığı gibi. Bir açıklama: daha -R
sonra grep
dizinlerde de arandı. Örnek:
cd\
grep -R {something_to_look_for} {where_to_look_in}
find . -name '*{part_of_word}*' -print
Nerede .
şu anda vardır ve dizini *
bir joker olduğunu.
Oh ve bunları da birleştirebilirsiniz. Örnek:
locate {something}|grep {some_part_of_something}|more
Doğru hatırlıyorsam: locate
en hızlısı (veritabanınızın güncel olduğunu varsayarsak) ve find
en yavaşıdır. Ve grep
en karmaşık olanıdır, aynı zamanda regex'leri kullanabildiğiniz için bunlardan en çok olanıdır.
grep -R "ne" "nerede"
örnek:
grep -R hello /home
Grep komutu bunun için yaygın olarak kullanılır.
grep PATTERN dosya adı
grep bazı çok karmaşık aramalar yapabilir.
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
Sen kullanabilirsiniz grep
içeren dosyaları listelemek için word
verilen in directory
:
grep -Ril word directory
Burada:
* -R
alt dizinlerdeki dosyaları tekrar tekrar arayın.
* -i
görmezden gelin büyük metin
* -l
dosya içeriği bölümleri yerine dosya adlarını gösterir. (not: -L
kelimesini içermeyen dosya adlarını gösterir).
man grep
tüm seçenekleri almak için kullanın
-i
küçük harf duyarlı bir arama yapar.