OS X 10.8では、ユーザーは通知センターを1日間無効にできます。コマンドラインから有効になっているかどうかを確認する方法はありますか?
OS X 10.8では、ユーザーは通知センターを1日間無効にできます。コマンドラインから有効になっているかどうかを確認する方法はありますか?
回答:
サイレントが現在有効になっているか無効になっているかを実際に確認できます。通知センターは、値を読み取ることができる次の場所にplistをドロップします。次のコマンドを実行して、plistファイルを見つけます。
ls ~/Library/Preferences/ByHost/com.apple.notificationcenterui.*.plist
これで、次のコマンドを使用して、見つけたplistから値を読み取ることができます。
defaults read ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist
注:実際のファイル名は、上記のファイル名とは異なる場合があります。
「doNotDisturb」というキーが表示され、値は1または0(有効または無効)になります。
次のようにして、ステータスを変更することもできます。
defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist doNotDisturb 1
または:
defaults write ~/Library/Preferences/ByHost/com.apple.notificationcenterui.8D3EA20D-8D7F-52E2-9F99-BC17A13A3F0E.plist doNotDisturb 0
変更を有効にするには、次のように入力して通知センターを再起動する必要があります。
killall NotificationCenter
非常にシンプルなAutomatorスクリプトを実際に作成したので、通知センターのサイレントモードをキーボードショートカットで有効/無効にできるようになりました。とても便利な。:)
killall NotificationCenter
設定をデフォルトにリセットしますが、設定をリロードしません。
おそらく私が考えることができる最良の方法は、ターミナル通知機能をインストールして、ターミナルからメッセージを送信することです。
端末通知機能はRuby Gemsからインストールできます
タイプ:
sudo gem install terminal-notifier
タイプ:
terminal-notifier -message "通知センターが実行中です" -title "NC Status"
通知センターが稼働している場合は、「通知センターが稼働しています」というメッセージが表示されます
現在のところ、通知センターをプログラムで操作する方法(コマンドラインを含む)はかなり制限されています。InfluenceJamieが指摘したように、コマンドラインから通知を送信できるterminal-notifierがありますが、現時点で通知の送信はほとんどすべてのプログラムで実行できます。私が開発者向けドキュメントを読んだところ、プログラムは送信した特定の通知に関する情報のみを送受信でき、Notifcation Center自体のステータス情報やその他の通知は取得できません。Applescriptインターフェースもありません。
したがって、現時点では、InfluenceJamieが提案したように、通知が通過するかどうかを手動でテストするか、誰かがAppleのプライベートAPIを見つけてコマンドラインインターフェースを作成することを期待しています。
通知センターの設定は~/Library/Preferences/ByHost
フォルダーに保存されます。つまり、マシン固有の設定です。
defaults -currentHost
コマンドを使用して、内部の設定を読み取ることができます。-currentHost
にByHost
保存されている一般的なユーザー固有の設定ではなく、設定を指定するために使用されます~/Library/Preferences
。
defaults -currentHost read com.apple.notificationcenterui doNotDisturb
出力値1
は0
、無効になっているため、アクティブになっていることを意味します。
実際、上記のコマンドは~/Library/Preferences/ByHost/com.apple.notificationcenterui.<your-UUID>.plist
ファイルからオプションを読み取っています。
警告:ByHost
オプションを設定しdefaults -currentHost write
ても機能しません。オプションは実際にファイルに書き込まれますが、対応するデーモンによって再ロードされません。これはバグだと思います。