Benachrichtigungszentrale in Mountain Lion vorübergehend über die Befehlszeile deaktivieren?

Ich habe versucht, ein Skript zu erstellen, um das Benachrichtigungszentrum zu deaktivieren/aktivieren, auch wenn es nur vorübergehend ist. Es sollte dasselbe tun wie das manuelle Verschieben des Benachrichtigungszentrums, das Scrollen nach oben und das Umschalten des Abzeichens „Benachrichtigungen und Banner anzeigen“.

Weiß jemand, ob es möglich ist und wie es geht? :)

Danke!

Antworten (3)

Um die Benachrichtigungszentrale über die Befehlszeile zu deaktivieren, schreiben Sie einen KeepAlive-Schlüssel, der falsch ist, wie folgt in /System/Library/LaunchAgents/com.apple.notificationcenterui.plist:

sudo defaults write /System/Library/LaunchAgents/com.apple.notificationcenterui KeepAlive -bool false  

Wenn Sie das Notification Center wieder aktivieren möchten, führen Sie einfach dasselbe mit einem true aus:

sudo defaults write /System/Library/LaunchAgents/com.apple.notificationcenterui KeepAlive -bool true  

Methode zum DEAKTIVIEREN ohne sudo:

launchctl unload -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist  
killall NotificationCenter

Methode zum ENABLE ohne sudo:

launchctl load -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist  

Drücken Sie dann einfach Command+Shift+G und gehen Sie zu /System/Library/CoreServices/, suchen Sie dann „Notification Center“ und doppelklicken Sie darauf, um es erneut zu starten

Tutorial mit nützlichen Informationen hier und hier

es scheint nicht zu funktionieren. Ich habe versucht, es auf „false“ zu setzen und dann eine Benachrichtigung über den Terminal-Notifier auszulösen, und es erscheint direkt mit keelive „false“ und „true“. Muss ich noch etwas tun? Gibt es andererseits eine Chance, es nicht mit sudo zu tun? Danke!
Methode ohne sudo hinzugefügt. Wenn es bei Ihnen immer noch nicht funktioniert, geben Sie mir bitte eine Code-Fehlerrückgabe im Terminal.

Ich klicke einfach mit der Alt-Taste auf das Menüleistensymbol, wodurch es tatsächlich ausgegraut und deaktiviert wird, bis es erneut angeklickt wird.

Das wusste ich nicht, danke. Die Frage fragt jedoch nach einer Kommandozeilenlösung.

Ich bin gerade 4 Jahre später auf diese Frage gestoßen, als ich nach derselben Sache gesucht habe, und habe mir dieses AppleScript ausgedacht, das den aktivierten Zustand des Benachrichtigungszentrums umschaltet:

    (*
    Toggle enabled state of Notification Center menu item
    Notification Center can be enabled/disabled by clicking the menu item with the Option key pressed.
    *)

    tell application "System Events"
        set ncMenu to menu bar 2 of application process "SystemUIServer"
        set ncItem to menu bar item 1 of ncMenu
        set ncTitle to title of ncItem

        set ncTitleEnabled to "Notification Center"
        set ncTitleDisabled to "Notification Center, Do Not Disturb enabled"

        if (ncTitle = ncTitleEnabled or ncTitle = ncTitleDisabled) then
            -- toggle enabled state of Notification Center
            key down {option}
            click menu bar item ncTitle of ncMenu
            key up {option}
        else
            -- can't access Notification Center menu
            display dialog "Notification Center is not available." with title "Applescript Error" buttons {"OK"} default button "OK"
        end if
    end tell

Speichern Sie es als nc.scpt und führen Sie es im Terminal aus, indem Sie einen Alias ​​in Ihrer Bash ~/.profile erstellen:

alias nc="osascript ~/path/to/nc.scpt"

Seit OS X Mavericks erhalten Sie möglicherweise eine Fehlermeldung, dass osascript eine Berechtigung für "Zugänglichkeitsfunktionen" benötigt. Sie müssen Terminal zur Liste der Apps hinzufügen, die Ihren Computer steuern dürfen (Systemeinstellungen > Sicherheit & Datenschutz > Datenschutz > Eingabehilfen). Da dies jedem Terminal-Skript den Zugriff auf die GUI ermöglicht, ist es möglicherweise besser, das Skript in eine Automator-App zu konvertieren und diese Berechtigung nur Ihrer App zu gewähren.

Sie können eine Tastenkombination für die Automator-App erstellen. Siehe So springen Sie schnell zu einer anderen Anwendung, ohne die Befehlsregisterkarte zu verwenden . Übrigens habe ich die Innereien des Notification Center-Menüs mit dem UI-Browser (kostenlose Testversion) erhalten.