Linux işletim sistemini ilk kurduğunuz anda, yüzlerce dizin altında
binlerce dosyanız olacaktır. find komutu, bu
dosyaların arasında tarama yapabilmek için geliştirilmiştir. Bu
komutla sadece dosya isimlerine değil, dosyanın sahibi, erişim hakları,
son erişim tarihi gibi verilere de ulaşmak mümkündür.
find komutunun en sık kullanış şekli şudur:
find <dizin-ismi> -name <ne-aratiliyor>
dizin-ismi yerine taranacak olan dosyanın bulunduğu dizin ismi yazılır.
-name parametresinden sonra ise aranan dosyanın ismini girin. Burada
"*" ve "?" gibi joker karakterlerini de kullanabilirsiniz. (Bu gibi
özel karakterler hakkında daha geniş bilgi
Bash Kabuğu konusu altında bulunabilir)
Aşağıda, find komutunun kullanımına ilişkin birkaç örnek yeralıyor.
$ find . -name "*.html"
(bulundugunuz dizinden itibaren sonu .html ile biten dosyalari arar)
$ find /home/halil -name "screen"
(/home/halil dizininden itibaren screen isimli dosyalari arar)
Bu komut, -type d parametresi yardımıyla sadece dizin
isimleri arasında arama yapar.
$ find /usr/ -name "linux" -type d
find komutuna bir alternatif olan
locate komutu ile dosyalar çok kısa bir
sürede taranabiliyor. update komutu, her
sabah belirli bir saatte sistemdeki tüm dosya ve dizin isimlerini bir veri
tabanına yükler. Daha sonra bu dosyada yeralan belirli bir dosya veya dizin
ismini locate ile arayabilirsiniz:
# locate pico
/usr/bin/pico
/usr/man/man1/pico.1.gz
Yukarıdaki komut ile içinde pico kelimesi geçen dosyaları bulduk.