.DS_Store sorunsalı

shell find ds_store

Windows’dan Mac OS’a geçince yaşadığım en büyük farklardan biri de sevgili Finder’ın sürekli olarak .DS_Store adlı dosyalar üreterek fazladan file kalabalığı yaratmasıydı.

Sadece Mac ile çalışıyorsanız sorun yok, ama benim gibi hem Windows, hem Linux karışık bir durumunuz varsa, özellikle bu çalıştığınız alan Proje Folder’ınızsa (ve versiyon kontrol kullanıyorsanız) biraz can sıkıcı oluyor bu .DS_Store’lar.

Bunu çözmek için terminali açıp ufak bir-iki hareket yapmamız yeterli. Önce çalıştığınız foldera gidin:

cd ÇALIŞTIĞINIZ_FOLDER

Daha sonra bir kontrol yapın bakalım .DS_Store varmı?

find . -name '\.DS_Store' -print

Eğer varsa, bunları tek hareketle silmek için:

find . -name '\.DS_Store' -print -delete

find komutuna geçilen ilk parametre arama işlemini nerede yapacağımızı söylüyor. Dikkat ettiyseniz ilk başta ilgili yere gidin dedim. Böylece path olarak . (nokta) vermek yeterli oldu. Nokta; bulunduğumuz yer yani Current path anlamındadır.

Eğer bakmak istediğimiz yer ~/Desktop/HedeHodo altında olsaydı:

find ~/Desktop/HedeHodo -name '\.DS_Store' -print

şeklini de kullanabilirdik. -name argümanına dosya ismini geçiyoruz. Nokta işaretini escape ediyoruz . yerine \. yazıyoruz. (Tabi tırnak içinde geçiyoruz adı)

Eğer yeni yeni bu işlerle uğraşıyorsanız bence 2 sorunuz olacak:

  1. \ işaretini nasıl yapıcam?
  2. ~ işaretini nasıl yapıcam?

OS’unuzda klavye modeli olarak: Turkish QWERTY PC kullandığınızı varsayarak; ters slash için:

⌥ + ? (alt aynı zamanda *option** olarak da ifade edilir*) alt ve soru işareti

tilda (dalga) için: (alt) + Ü yapabilirsiniz.

Eğer login olduğunuz kullanıcının silme yetkisi yoksa sudo ile işlemi yapmanız lazım. Yani:

sudo find . -name '\.DS_Store' -print -delete