Автоматически отслеживать команды записи по умолчанию, используемые в Mac OS X
Оглавление:
Если вам нравится настраивать Mac OS X с большим количеством настроек по умолчанию, записывайте команды из терминала, вы уже знаете, как сложно их отслеживать. Конечно, вы можете запросить историю команд для определенного синтаксиса команд, и вы всегда можете использовать grep для поиска выполненных команд по умолчанию, но есть лучший способ отслеживать их все, а именно хранить автоматически обновляемый текстовый файл, в котором хранится список всех использовались настройки по умолчанию.Это позволяет очень легко отслеживать, какие команды по умолчанию были активированы или отключены на конкретном Mac.
В этом учебном пособии вы узнаете, как автоматически отслеживать каждую запись значений по умолчанию и все другие строки команд по умолчанию, введенные на Mac, путем создания текстового файла, который специально отслеживает выполнение этих команд. Это чрезвычайно полезно для тех, кто часто возится с командами по умолчанию и либо забывает, что включено или отключено, либо просто хочет подсчитывать все изменения по умолчанию на Mac.
Другое преимущество этого трюка заключается в том, что он сохраняет список полностью отделенным от общей истории команд, что означает, что если история команд очищена, список по умолчанию останется доступным для использования в будущем.
Как автоматически отслеживать все команды по умолчанию, используемые в Mac OS
Мы предполагаем, что вы знакомы с приложением «Терминал», поэтому откройте его, чтобы начать работу.
Используйте текстовый редактор командной строки, который вам удобен, мы будем придерживаться nano, поскольку он прост и довольно удобен для пользователя. :
nano ~/.bash_profile
Вставьте следующую строку в новую строку в .bash_profile
"PROMPT_COMMAND=&39;echo $(история 1 | grep defaults)>> ~/Documents/defaults.txt&39; "
Обратите внимание, что стандартным расположением файла списка по умолчанию является домашний каталог пользователя ~/Documents/ папка в файле с именем «defaults.txt», при желании вы можете изменить его.
Сохраните документ, нажав Control+O, затем выйдите из nano, нажав Control+X
Документ с именем defaults.txt будет сгенерирован при первом обнаружении строки defaults при выполнении команды. Каждая новая запись по умолчанию будет добавлена в числовой список, добавленный в отдельной строке.
Возможно, лучше всего включать сразу после восстановления или сразу на новом Mac, тогда файл defaults.txt будет содержать полный список всех команд по умолчанию, когда-либо использовавшихся на данном Mac.
После того, как он существует достаточно долго, чтобы отследить несколько команд по умолчанию, открытие файла будет выглядеть примерно так:
Если вы используете кошку для просмотра файла, вы можете увидеть что-то вроде этого:
501 cat ~/Documents/defaults.txt 502 значения по умолчанию чтение com.apple.Finder 503 значения по умолчанию запись com.apple.dock springboard-rows -int 4 504 значения по умолчанию запись com.apple.dock springboard-columns -int 4; killall Dock 505 по умолчанию читать /Library/Preferences/SystemConfiguration/com.apple.airport.preferences RememberedNetworks 506 по умолчанию писать com.apple.systemsound com.apple.sound.uiaudio.enabled> "
Как уже упоминалось, он захватит все, что имеет «по умолчанию» в синтаксисе команды, включая использование cat, tail, nano и что-либо еще в самом файле defaults.txt. Кроме того, он будет отслеживать не только изменения, сделанные с помощью записи значений по умолчанию, но также каждый раз, когда команда значений по умолчанию была прочитана с чтением значений по умолчанию или удалена с помощью команд удаления значений по умолчанию.
Как ограничить средство отслеживания по умолчанию только «записью по умолчанию»
Если вы предпочитаете видеть исключительно строки «записи по умолчанию», используйте вместо этого в .bash_profile следующее:
PROMPT_COMMAND=&39;echo $(история 1 | grep defaults write)>> ~/Documents/defaults-write.txt&39; "
Что бы вы ни использовали, результирующий файл представляет собой обычный текстовый документ, и его также можно открыть в nano, vi, TextEdit, TextWrangler, BBedit, emacs или любом другом предпочтительном клиенте. Это упрощает не только отслеживание в целях системного администрирования, но и обмен списками с друзьями и коллегами.
Спасибо Майку за то, что он оставил этот отличный трюк в наших комментариях.