Daha fazla varsayılan nasıl keşfedilir OS X'te tweaks yaz?


13

OS X (ML) 'de "defaultults write" komutu ile yapılabilecek bazı yeni düzeltmeleri keşfetmek istiyorum.

Bilinen ince ayarlar için çevrimiçi avlanmak yerine onları kendim bulmak için ne yapabilirim?

Yanıtlar:


20

Yasal Uyarı: Ben yazarı olduğum ~/.osx, koleksiyonu defaults writeayarlarına . Ayarları bulmak için kullandığım teknikler bunlar. Burada bahsetmediğim daha iyi / daha kolay bir yöntem varsa bana bildirin!


Gizli olmayan ayarların çoğunda, Terminal.app'da doğru tercih tuşlarını şu şekilde bulabilirsiniz:

defaults read > a
# Change the setting
defaults read > b
diff a b

Gizli ayarlar için daha zorlaşır. stringsHerhangi bir ikili yürütülebilir dosyada komut satırı yardımcı programını kullanabilir ve elde edilen metnin herhangi birinin bir tercih anahtarı gibi görünüp görünmediğini görebilirsiniz. Örneğin:

strings /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder

İşte içindeki tüm .frameworkdosyaları inceleyecek /System/Library/Frameworks/ve çıktıyı biraz filtreleyecek başka bir örnek :

strings /System/Library/Frameworks/*.framework/Versions/Current/* /System/Library/Frameworks/*/Frameworks/*/Versions/Current/* 2> /dev/null | grep -E '^[a-zA-Z0-9_.-]{10,80}$' | sort | uniq

Gizli tercihleri ​​bulmak için kullanılabilecek GDB adlı bir araç da var .


1
Çok teşekkür ederim ve bana cevap verdiğine inanamıyorum! Github'daki güzel listenizi uzun zaman önce biliyordum btw. Çok çok teşekkür ederim! Bunu şimdi deneyeceğim.
Tom S

2
@ Lri FWIW, geçen hafta temiz bir Mountain Lion kurulumu yaptım ve defaults read;burada iyi çalışıyor.
Mathias Bynens

0

Başka dizeler komutu:

for f in $(mdfind kMDItemContentType==public.unix-executable -onlyin /System/Library/); do strings $f 2> /dev/null | grep -E '^[[:alnum:]_.-]{10,80}$' | grep ^Apple | sort -u | sed "s/^/${f##*/} /g"; done

sudo opensnoop -n cfprefsdhangi özellik listelerinin değiştirildiğini gösterir. Diğer dosya sistemi değişikliklerini gerçek zamanlı olarak görüntülemek için fseventer'ı kullanabilirsiniz .

varsayılanların bir bulma alt komutu vardır:

$ defaults find nsquitalw
Found 1 keys in domain 'Apple Global Domain': {
    NSQuitAlwaysKeepsWindows = 1;
}

Başlık dosyaları genellikle tercih anahtarları için tanımlar içerir:

grep PreferenceKey -r ~/Code/Source/WebKit/ | grep '\.h:'

-1

Sorunuzdan kabul ettiğim şey, bir uygulamanın ayarlarını / ayarlarını keşfetmek istediğinizdir. Bu önemsiz komutla bir uygulamanın tercihlerini okuyabilirsiniz

defaults read NSGlobalDomain

veya

defaults read com.google.Chrome istediğiniz yazılabilir komuttan krom yazılabilir tercihleri ​​okumak için.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.