Відповіді:
Відмова: Я автор ~/.osx
колекції defaults write
налаштувань . Це методи, які я використовую для пошуку налаштувань. Дайте мені знати, чи є кращий / простіший метод, про який я тут не згадувався!
У більшості не прихованих налаштувань саме в Terminal.app ви можете знайти правильні ключі налаштувань:
defaults read > a
# Change the setting
defaults read > b
diff a b
Для прихованих налаштувань він стає складнішим. Ви можете використовувати strings
утиліту командного рядка на будь-якому двійковому виконуваному файлі та побачити, чи будь-який із результатів тексту схожий на ключ налаштування. Наприклад:
strings /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder
Ось ще один приклад, який перегляне всі .framework
файли в /System/Library/Frameworks/
і дещо фільтрує вихід:
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
Також є інструмент під назвою GDB, за допомогою якого можна знайти приховані налаштування.
defaults read;
добре працює тут.
Ще одна команда рядків:
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 cfprefsd
показує, які списки властивостей змінені. Ви можете використовувати fseventer для відображення інших змін у файловій системі в режимі реального часу.
У налаштуваннях за замовчуванням є підкоманда пошуку:
$ defaults find nsquitalw
Found 1 keys in domain 'Apple Global Domain': {
NSQuitAlwaysKeepsWindows = 1;
}
Файли заголовків часто містять визначення ключових параметрів:
grep PreferenceKey -r ~/Code/Source/WebKit/ | grep '\.h:'
Що я припустив з вашого запитання, це ви хочете вивчити налаштування / налаштування програми. Ви можете прочитати налаштування програми за допомогою цієї тривіальної команди
defaults read NSGlobalDomain
або
defaults read com.google.Chrome
читати налаштування хромованого запису з команди за замовчуванням, яку ви попросили.