W systemie OS X 10.8 użytkownicy mogą wyłączyć Centrum powiadomień na jeden dzień. Czy istnieje sposób, aby sprawdzić, czy jest włączony z wiersza poleceń ?.
W systemie OS X 10.8 użytkownicy mogą wyłączyć Centrum powiadomień na jeden dzień. Czy istnieje sposób, aby sprawdzić, czy jest włączony z wiersza poleceń ?.
Odpowiedzi:
Możesz faktycznie dowiedzieć się, czy funkcja Nie przeszkadzać jest obecnie włączona czy wyłączona. Centrum powiadomień upuszcza listę w następującej lokalizacji, z której można odczytać wartość. Uruchom następujące polecenie, aby znaleźć plik plist:
ls ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist
Teraz możesz odczytać wartość z listy, którą właśnie znalazłeś, używając:
defaults read ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist
UWAGA: rzeczywista nazwa pliku może być inna niż nazwa powyżej.
Zobaczysz klucz o nazwie „doNotDisturb” i będzie miał wartość 1 lub 0 (włączony lub wyłączony)
Możesz także zmienić jego status, wykonując:
defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist doNotDisturb 1
lub:
defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist doNotDisturb 0
Aby zmiana zaczęła obowiązywać, musisz ponownie uruchomić Centrum powiadomień, wpisując:
killall NotificationCenter
Napisałem bardzo prosty skrypt Automatora, więc teraz mogę włączyć / wyłączyć Nie przeszkadzać w Centrum powiadomień za pomocą skrótu klawiaturowego. Bardzo przydatny. :)
killall NotificationCenter
zresetuje ustawienia do domyślnych, ale nie przeładuje ustawień.
Prawdopodobnie najlepszym sposobem, jaki mogę wymyślić, jest zainstalowanie powiadomienia terminala i wysłanie mu wiadomości z terminala.
Powiadomienia terminalowe można zainstalować za pośrednictwem Ruby Gems
Rodzaj:
sudo gem install terminal-notifier
Rodzaj:
terminal-notifier -message „Centrum powiadomień działa” -title „NC Status”
Jeśli działa Centrum powiadomień, pojawi się komunikat „Centrum powiadomień działa”
W tej chwili sposoby programowej interakcji z Centrum powiadomień (w tym za pomocą wiersza poleceń) są dość ograniczone. Jak zauważył InfluenceJamie, istnieje terminal-notifier , który pozwala wysyłać powiadomienia z wiersza poleceń, ale wysyłanie powiadomień to właściwie wszystkie programy, które w tej chwili mogą zrobić. Z mojej lektury dokumentacji programisty programy mogą wysyłać i uzyskiwać jedynie informacje o określonych powiadomieniach, które wysyłają, brak informacji o stanie samego Centrum powiadomień lub inne powiadomienia. Nie ma również interfejsu Applescript.
W tej chwili jesteś ograniczony do ręcznego testowania, czy powiadomienie przechodzi, jak sugerował InfluenceJamie , lub masz nadzieję, że ktoś odkryje prywatne interfejsy API Apple i utworzy interfejs wiersza poleceń.
Ustawienie Centrum powiadomień jest przechowywane w ~/Library/Preferences/ByHost
folderze, co oznacza, że są to ustawienia specyficzne dla komputera.
Możesz użyć defaults -currentHost
polecenia, aby odczytać ustawienia. -currentHost
służy do określenia ByHost
ustawienia, które nie jest typowe dla konkretnego użytkownika przechowywane w ~/Library/Preferences
.
defaults -currentHost read com.apple.notificationcenterui doNotDisturb
Wartość wyjściowa 1
oznacza, że jest aktywowana, 0
dla niepełnosprawnych.
W rzeczywistości powyższe polecenie odczytuje opcje z ~/Library/Preferences/ByHost/com.apple.notificationcenterui.<your-UUID>.plist
pliku.
Ostrzeżenia : Ustawianie ByHost
opcji za pomocą defaults -currentHost write
nie działa. Opcje są rzeczywiście zapisane w pliku, ale nie jest on ponownie ładowany przez odpowiedniego demona. To chyba błąd.