27 Ocak 2016 Çarşamba

Find komutu kullanımı

Find komutu Linux'un en fazla kullanılan komutlarından biridir. Dosyaları , dizinleri bulmamıza yarayan bir komut. Kullanıcı , grup , izin (permission) , tarih , dosya türü ve boyuta göre dosyaları bulup getirebilmektedir.


  • 1. Bölüm : İsim ile ilgili temel find komutları
  • 2. Bölüm : Permissionlarına göre aramak
  • 3. Bölüm : Üzerlerindeki sahiplik ve gruplarına göre dosya bulmak
  • 4. Bölüm : Tarih ve zamanlarına göre dosya ve dizin bulmak
  • 5. Bölüm : Boyutlarına göre dosya ve dizin bulmak





I. Bölüm - İsim ile ilgili temel find komutları
-------------------------------------------------



  • Üzerinde bulunulan dizinde tüm huseyin.txt dosyalarını bulmak için




  • /home dizini altında ismi huseyin.txt olan dosyaları bulmak için ;




  • /home dizini altında büyük - küçük harf ayrımı olmadan ismi huseyin.txt olan dosyaları bulmak için ;






  • / (root) dizini altında ismi Huseyin olan dizinleri listeleyip getirmek için ;





  • Üzerinde bulunulan dizinde adı huseyin.php olan php dosyalarını bulmak için ;




  • Üzerinde bulunulan dizinde tüm php dosyalarını bulmak için ;





II. Bölüm - Permissionlarına göre aramak
-----------------------------------------------



  • 777 iznine sahip dosyaları getirmek için





  • Üsttekinin tam tersine 777 hakkı olmayan dosyaları getirmek için de ;





  • Tüm SGID ve SUID bitleri etkinleştirilmiş olan dosyaları bulmak için

 / \( -perm -u+s -or -perm -g+s  \) -type f -exec ls -l {} \;



  • Sticky Bite sahip olan izin hakkı da örneğin 700 olan dosyaları bulmak





  • .txt formatındaki dosyaları bulup silmek, örneğin bulunduğun dizinde yapmak için



type f -name "*.txt" -exec rm -f {} \;


  • Boş dosyaları bulmak için şu komutu kullanabiliriz


/home/huseyin -type f -empty

  • Boş klasörleri bulmak için şu komutu kullanabiliriz

/home/huseyin -type d -empty


  • Bütün gizli dosyaları bulmak için 

/home/huseyin -type d -empty



III. Bölüm - Üzerlerindeki sahiplik ve gruplarına göre dosya bulmak
-----------------------------------------------


  • Sahibi huseyin olan test.txt dosyasını bulmak için 


/ -user huseyin -name test.txt



  • Bir dizin altında sahibi huseyin olan tüm dosyaları bulmak için



/tmp -user huseyin


  • Bir dizin altında grubu mygroup olan tüm dosyaları bulmak için

/tmp -group mygroup


  • Bir dizinde huseyin kullanıcısına ait tüm .txt dosyalarını bulmak için 


/tmp -user huseyin -iname "*.txt"




IV. Bölüm - Tarih ve zamanlarına göre dosya ve dizin bulmak
-----------------------------------------------



  • 10 gün içerisinde modify olan dosyaları bulmak için


/ -mtime 10



  • 10 gün içerisinde erişilen (read olunan) dosyaları getirmek için


/ -atime 10



  • 10 günden fazla 20 günden az zaman arasında modify olan dosyaları bulmak için


/ -mtime +50 -mtime -100



  • Son 1 saat içerisinde modify olan dosyaları bulmak için 



/ -mmin -60

  • Son 1 saat içerisinde change olan dosyaları bulmak için

/ -cmin -60

  • Son 1 saat içerisinde erişilen (access) dosyaları bulmak için

/ -amin -60




V. Bölüm - Boyutlarına göre dosya ve dizin bulmak
-----------------------------------------------


  • 10 MB lık tüm dosyaları bulmak için 

/ -size 10M

  • 10MB ve 20 MB arasındaki dosyaları bulmak için

/ -size +10M -size -20M





Hiç yorum yok:

Yorum Gönder