Jawaban:
Penafian: Saya penulis ~/.osx, kumpulan defaults writepengaturan . Ini adalah teknik yang saya gunakan untuk menemukan pengaturan. Beri tahu saya jika ada metode yang lebih baik / lebih mudah yang tidak saya sebutkan di sini!
Untuk sebagian besar pengaturan yang tidak tersembunyi, ini adalah bagaimana Anda dapat menemukan kunci preferensi yang benar di Terminal.app:
defaults read > a
# Change the setting
defaults read > b
diff a b
Untuk pengaturan tersembunyi, itu menjadi lebih rumit. Anda dapat menggunakan stringsutilitas baris perintah pada sembarang biner yang dapat dieksekusi dan melihat apakah ada teks yang dihasilkan seperti kunci preferensi. Misalnya:
strings /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder
Berikut ini contoh lain yang akan melihat semua .frameworkfile dalam /System/Library/Frameworks/dan memfilter output agak:
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
Ada juga alat yang disebut GDB yang dapat digunakan untuk menemukan preferensi tersembunyi.
defaults read;berfungsi dengan baik di sini.
Perintah string lain:
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 cfprefsdmenunjukkan daftar properti apa yang diubah. Anda dapat menggunakan fseventer untuk menampilkan perubahan sistem file lainnya secara real time.
default memiliki sub-perintah find:
$ defaults find nsquitalw
Found 1 keys in domain 'Apple Global Domain': {
NSQuitAlwaysKeepsWindows = 1;
}
File header sering berisi definisi untuk kunci preferensi:
grep PreferenceKey -r ~/Code/Source/WebKit/ | grep '\.h:'
Apa yang saya asumsikan dari pertanyaan Anda adalah Anda ingin menjelajahi tweak / pengaturan aplikasi. Anda dapat membaca preferensi aplikasi dengan perintah sepele ini
defaults read NSGlobalDomain
atau
defaults read com.google.Chrome untuk membaca preferensi chrome yang dapat ditulisi dari perintah tulis default yang Anda minta.