Verfolgen Sie die Standard-Schreibbefehle, die in Mac OS X automatisch verwendet werden

Wenn Sie Mac OS X mit vielen Standard-Schreibbefehlen aus dem Terminal optimieren wollen, wissen Sie bereits, wie schwer es sein kann, sie zu verfolgen. Sicher, Sie können Befehlsverlauf für bestimmte Befehlssyntax abfragen, und Sie können immer grep verwenden, um ausgeführte Standardbefehle zu finden, aber es gibt eine bessere Möglichkeit, sie alle zu verfolgen, und zwar durch eine automatisch aktualisierte Textdatei, die eine Liste aller speichert Verwendete Standardeinstellungen. Dies macht es sehr einfach zu verfolgen, welche Standardbefehle auf einem bestimmten Mac aktiviert oder deaktiviert wurden.

In diesem Tutorial erfahren Sie, wie Sie automatisch jeden Standard-Schreibbefehl und alle anderen auf einem Mac eingegebenen Standard-Befehlszeichenfolgen verfolgen, indem Sie eine Textdatei generieren, die diese Befehlsausführungen genau verfolgt. Dies ist sehr nützlich für diejenigen, die Standard-Befehle oft basteln und entweder vergessen, was aktiviert oder deaktiviert ist, oder einfach eine laufende Liste aller Standard-Änderungen auf einem Mac wollen.


Der andere Vorteil dieses Tricks besteht darin, dass die Liste vollständig von der allgemeinen Befehlshistorie getrennt bleibt, was bedeutet, dass, wenn der Befehlshistorie gelöscht ist, die Standardliste weiterhin für zukünftige Referenz verfügbar ist.

So verfolgen Sie alle Standardeinstellungen Befehle, die unter Mac OS automatisch verwendet werden

Wir gehen davon aus, dass Sie mit der Terminal-App vertraut sind. Öffnen Sie diese, um mit dem Programm zu beginnen.

Verwenden Sie einen Befehlszeilen-Texteditor, mit dem Sie vertraut sind. Wir bleiben bei nano, da er einfach und ziemlich benutzerfreundlich ist:

nano ~/.bash_profile

Fügen Sie die folgende Zeichenfolge in eine neue Zeile innerhalb von .bash_profile ein

PROMPT_COMMAND='echo "$(history 1 | grep "defaults")" | sed '/^$/d' >> ~/Documents/defaults.txt'

Beachten Sie, dass der Standardspeicherort für die Standardlistendatei das Home-Verzeichnis ~ / Documents / des Benutzers in einer Datei namens "defaults.txt" ist. Sie können dies bei Bedarf ändern.

Speichern Sie das Dokument, indem Sie Strg + O drücken und dann nano verlassen, indem Sie Strg + X drücken

Das Dokument mit der Bezeichnung 'defaults.txt' wird beim ersten Auftreten der Zeichenfolge 'defaults' in der Befehlsausführung generiert. Jeder neue Standardeintrag wird zu einer numerischen Liste hinzugefügt, die in der eigenen Zeile hinzugefügt wird.

Dies ist vielleicht am besten nach einer Wiederherstellung oder sofort auf einem neuen Mac aktiviert, so dass die defaults.txt Datei die vollständige Liste aller Standardbefehle enthält, die je auf dem jeweiligen Mac verwendet wurden.

Nachdem es lange genug existiert, um ein paar Standardbefehle zu verfolgen, sieht das Öffnen der Datei ungefähr so ​​aus:

Wenn Sie cat zum Anzeigen der Datei verwenden, sehen Sie möglicherweise Folgendes:

501 cat ~/Documents/defaults.txt
502 defaults read com.apple.Finder
503 defaults write com.apple.dock springboard-rows -int 4
504 defaults write com.apple.dock springboard-columns -int 4;killall Dock
505 defaults read /Library/Preferences/SystemConfiguration/com.apple.airport.preferences RememberedNetworks
506 defaults write com.apple.systemsound "com.apple.sound.uiaudio.enabled" -int 1
507 defaults read com.apple.systemsound
508 defaults write com.apple.systemsound "com.apple.sound.uiaudio.enabled" -int 0
509 tail -f ~/Documents/defaults.txt

Wie bereits erwähnt, wird alles in der Befehlssyntax mit 'defaults' abgefangen, was die Verwendung von cat, tail, nano und allem anderen in der Datei defaults.txt selbst beinhaltet. Darüber hinaus wird es nicht nur die Änderungen protokollieren, die mit den Standardschreibvorgängen vorgenommen wurden, sondern auch, wenn ein Standardbefehl mit Standardwerten gelesen oder mit Standardlöschbefehlen entfernt wurde.

Wie man den Defaults Tracker nur auf "defaults write" beschränkt

Wenn Sie ausschließlich "defaults write" -Strings sehen möchten, verwenden Sie stattdessen Folgendes in .bash_profile:

PROMPT_COMMAND='echo "$(history 1 | grep "defaults write")" | sed '/^$/d' >> ~/Documents/defaults-write.txt'

Was auch immer Sie verwenden, die resultierende Datei ist ein generisches Textdokument und kann auch in nano, vi, TextEdit, TextWrangler, BBedit, emacs oder dem bevorzugten Client geöffnet werden. So können Sie nicht nur die Systemadministration verfolgen, sondern auch Listen mit Freunden und Kollegen teilen.

Danke an Mike, dass er diesen exzellenten Trick in unseren Kommentaren hinterlassen hat.