Dizin hiyerarşisi içinde dosyaları arar. -P,-L,-H parametreleri bir arada kullanılırsa son kullanılan diğerlerinin üzerine yazar. Parametrelerdeki n (rakam) girişi + ve - işaretli ile birlikte kullanılabilir. + beliritlenden daha büyük değerlere, - ise belirtilenden daha düşük değerlere işaret edecektir. Daha ayrıntılı bilgiyi man sayfasından elde edebilirsiniz.
Man sayfalarında tanımlı kullanım şekli:
find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]
Örnek:
find $HOME -mtime 0
HOME dizini içerisinde bulunan son 24 saatte değişikliğe uğramış dosyalar listelenecektir.
find /sbin /usr/sbin -executable \! -readable -print
Belirtilen dizinlerde çalıştırılabilen fakat okunamayan dosyalar listelenecektir.
find . -perm 664
Sahibi ve grubu okuma-yazma hakkına sahip, diğerleri ise okuma hakkına sahip dosyaları görüntüler. Ekstra haklara sahip olanlar da listeye eklenecektir.
find . -perm -664
Sahibi ve grubu okuma-yazma hakkına sahip, diğerleri ise okuma hakkına sahip dosyaları görüntüler. Ekstra özelliğe sahip olanlar listeye eklenmezler. Örneğin grubun çalıştırma izni de varsa bu dosya eklenmez.
find . -perm /220 veyafind . -perm /u+w,g+wveya find . -perm /u=w,g=w
Üç komutta aynı işlemi gerçekleştirir. Bu komut grubu veya sahibi tarafından yazılabilen dosyaları araştıracaktır.
find . -perm -444 -perm /222 ! -perm /111
veya
find . -perm -a+r -perm /a+w ! -perm /a+x
Her iki komutta herkes tarafından okunabilen dosyaları araştıracaktır. Fakat en az biri (sahibi veya grubu veya diğerleri) tarafından yazılabilir ve kimse tarafından çalıştırılamayan durumunda olmalıdır.
find -name xxxhl.txt
xxxhl.txt isimli dosya(lar) bulunulan dizin ya da alt dizinlerin birinde ise çıktıda yer ya da yerleri belirtilir. İsimle arama yaparken -name parametresi girilir.
find /mnt/ -name xxxhl.txt
/mnt dizini ve alt dizinlerinde arama yapılır.
Bazı Parametreleri:
-P
Sembolik linkleri takip etmez.
-L
Sembolik linkleri takip eder.
-H
Komut satırı argümanlarının işlenmesi dışında sembolik linkleri takip etmez.
-D debugoptions
İstenilen bilgiyi görüntüler. debugoptions olarak help, tree, search, stat, rates, opt, exec girilebilir.
find -D help
-print0 veya -fprint0
Daima tam dosya adını yazdırır.
-name pattern
İsimle (pattern) arama yapmak için kullanılır.
-Olevel
Optimizasyon seviyesi belirlenir. Öntanımlı ayar 1. seviyedir.
find -O2
-daystart
Belli komutlar (-amin, -atime, -cmin, -ctime, -mmin, -mtime) için başlama zamanını belirtmekte kullanılır. (24 saatten az olmak üzere)
-depth
Dizinden önce dizinin içeriği işlenir.
--help
Yardım görüntülenir.
-maxdepth levels
Araştırılacak azami dizin derinliği belirlenir.
find -maxdepth 1 -name bb.txxt
Sadece bulunulan komut satırında arama yapar(altdizinlerde değil)
-mindepth levels
Belirtilen seviyeye uygulama demektir.
find -mindepth 1 -name bb.txt
Bulunulan komut dizinininde değil, altdizinlerinde arama yapılır.
-mount
Diğer dosya sistemlerinde arama yapmaz.
-warn
Hata mesajları gösterimini açar.
-nowarn
Hata mesajlarını gösterimini kapatır.
-amin n
Dosya son giriş zamanı için n ile belirtilecek kadar dakika kontrol edilir.
find -amin 5
Dizin veya altdizinlerde tam 5 dakika önce giriş yapılan dosyalar aranır.
find -amin -5
5 dakikadan önce giriş yapılan dosyalar aranır.
find -amin +5
5 dakikadan uzun zaman önce giriş yapılan dosyalar aranır.
-atime n
n*24 saat şeklinde girişler için arama yapılır.
-empty
Boş dosya ve dizinler için arama yapılır.
-inum n
Dosya n ile belirtilen inode numarasına sahip olmalıdır.
-path pattern
İsimleri kabuk şablonları(pattern) ile eşleştirerek arar.
find . -path "./sr*sc"
Eğer varsa `./src/misc' dosyası bulunur.
-perm mode
Dosya isimleri mode ile belirtilen izinlere tam uymalıdır.
-perm /mode
Belirtilen modlardan birine uyumlu olamlıdır.
-perm -mode
Bütün izinler dosyaya uymalıdır. (fazlası olabilir)
-readable
Okunabilir dosyalar aranır.
-samefile name
İsimle(name) belirtilen inode numarasıyla aynı inode numarasına sahip dosyalar aranır.
-size n[cwbkMG]
n birim alan kullanan dosyaları arar.
find -size -20
20*512 bayt bloktan küçük dosya ve dizinleri listeler.
find -size -9c
9 bayttan küçük dosyaları listeler.
find -size +100M
100 megabayttan büyük dosyaları listeler(1048576 baytlık birimler)
find -size +2GB
2 gigabayttan daha büyük dosyalar listeler(1073741824 baytlık birimler)
-type c
Belirtilen tipe uygun arama yapılır. (b,c,d,p,f,l,s,D)
find -type f
Dosyalar için arama yapılır.
find -type d
Dizinler için arama yapılır.
-used n
Dosyanın durumunun değiştirilmesinden n gün geçtiyse listelenir.
-find user uname
Dosyanın sahibi uname ile belirtilir.
find -user aa
-writable
Yazılabilir dosyaları araştırır.
-xtype c
-type c ile aynıdır. Fakat sembolik link uygulamalarında farklıdırlar.
-wholename pattern
-path parametresine benzemektedir.
-nouser
Dosyanın kullanıcı kimliğiyle uyuşan kullanıcı yok ise listeler.
-regex pattern
Dosya isimlerini pattern açıklaması ile karşılaştırır.
find -regex ./*x*
Aynı dizindeki xxxhs dosyasını listeler.
-delete
Dosyaları siler.
-exec command
Komutu(command) çalıştırır.
-exec command {} +
exec komutunu farklı dosyalar üzerinde çalıştırır(başlangıç dizininde)
-execdir command
exec komutunu altdizinlere de uygulamak için kullanılır
-execdir command {} +
exec komutunu altdizinlere de uygulamak için kullanılır
-fprint file
Dosya isminin dosya dosya yazılmasını sağlar
-ok command
-exec gibidir, fakat uygulamadan önce kullanıcıya sorar.
-okdir command
-execdir gibidir, fakat uygulamadan önce kullanıcıya sorar.
-print
Tam dosya isimlerini listeler.
-print0
Boşluksuz tam dosya isimlerini listeler.
-printf format
format / ve % karakterleriyle açıklanabilir (oldukça ayrıntılıdır)
-prune
Eğer dosya bir dizin ise içine uygulanmaz.
-quit
Derhal çıkış yapar.
***************************************************************************
Linux Mint 14 dağıtımındaki find (GNU findutils) 4.4.2 için geçerli olan bilgilerdir. Diğer dağıtım ve sürümlerde uygulamalarda farklılıklar olabilir.
Yazı tarihi : 2013