man/files
man · Dosyalar

$ mdfind

Bölüm 1 · Dosyalar

Spotlight meta veri deposunu kullanarak sorgularla eşleşen dosyaları bulur

Özet

mdfind [-live] [-count] [-onlyin dizin] [-name dosyaAdı] sorgu

Açıklama

mdfind yardımcı programı, macOS'in merkezi meta veri deposuna (Spotlight) danışarak, verilen sorgu ile eşleşen dosyaların bir listesini döndürür. Sorgu basit bir kelime/dize olabileceği gibi, belirli meta veri özniteliklerini içeren karmaşık bir sorgu ifadesi de olabilir.

Seçenekler

Aşağıdaki seçenekler mevcuttur:

  • -0: Her sonuç yolundan sonra bir ASCII NUL (\0) karakteri yazdırır. Bu, özellikle [xargs(1)] gibi araçlarla birlikte kullanıldığında boşluk içeren dosya yollarının güvenli bir şekilde işlenmesini sağlar.
  • -live: Aramayı tamamladıktan sonra sonlandırmaz, sorguyla eşleşen dosyaların sayısı hakkında canlı güncellemeler sağlamaya devam eder. Arama sonuçları değiştikçe eşleşme sayısı anlık güncellenir. Arama işlemi Ctrl-C tuşlarına basılarak sonlandırılabilir.
  • -count: Dosya yollarını tek tek listelemek yerine, sorguyla eşleşen toplam öge sayısını doğrudan yazdırır.
  • -onlyin dizin: Aramanın kapsamını yalnızca belirtilen dizin ve onun alt dizinleriyle sınırlandırır.
  • -name dosyaAdı: Spotlight meta verilerinin tamamını taramak yerine yalnızca dosya adında belirtilen dosyaAdı ifadesi geçen dosyaları arar.
  • -literal: Sağlanan sorgu dizesinin, Spotlight tarafından herhangi bir ön işleme veya kelime köküne ayırma gibi işlemlere tabi tutulmadan, birebir sorgu dizesi olarak alınmasını zorunlu kılar.
  • -interpret: Sağlanan sorgu dizesinin, kullanıcı bu ifadeyi doğrudan Spotlight arama menüsüne yazmış gibi yorumlanarak aranmasını sağlar. Örneğin, "ders" dizesi arandığında, hem dosya adında hem de dosya metin içeriğinde geçen bu kelime Spotlight mantığıyla formüle edilerek aranır.

Örnekler

Aşağıdaki örnekler kabukta (shell) çalıştırılabilecek şekilde gösterilmiştir:

  1. Meta veri özniteliklerinde veya dosya içeriğinde "rapor" kelimesi geçen tüm dosyaları arama:

    mdfind rapor
  2. Yalnızca kullanıcı ev dizini altındaki Belgeler klasöründe "proje" kelimesini arama:

    mdfind -onlyin ~/Documents proje
  3. Yazar özniteliğinde (kMDItemAuthors) "Ahmet" geçen tüm dosyaları bulma:

    mdfind "kMDItemAuthors == '*Ahmet*'"
  4. Yalnızca adı "indeks.html" olan dosyaları Spotlight dizininde arama:

    mdfind -name indeks.html
  5. "sunum" aramasıyla eşleşen toplam dosya sayısını öğrenme:

    mdfind -count sunum
  6. Spotlight menüsünden arıyormuş gibi "ders notları" kelime öbeğini yorumlayarak arama:

    mdfind -interpret "ders notları"
  7. "kayıt" içeren dosyaları bulup xargs ile güvenli bir şekilde silme:

    mdfind -0 -name "kayıt*" | xargs -0 rm -rf

[!TIP] Arama sorguları oluştururken kullanabileceğiniz özniteliklerin (attributes) tam listesini ve şemalarını görmek için mdimport(1) aracının -X seçeneğini inceleyebilirsiniz.

Ayrıca Bakınız

mdimport(1), mdls(1), mdutil(1), xargs(1)