How to enable/disable Do Not Disturb from shell on Mavericks? I would like to toggle the Do Not Disturb in the notification center with a keyboard shortcut.

I am using BetterTouchTool for some extra keyboard shortcuts but it does not support enabling/disabling the notifications in the default options.

It has an option for executing a terminal command so I'm asking here how to enable/disable Do Not Disturb from the terminal?

I found Schedule ‘Do Not Disturb’ In OS X Mountain Lion With Automator and I tried to run the commands but it didn't seem to work.
You can simplify the answer that razvanz provided by using the -currentHost argument to the defaults command.

Enable Do Not Disturb:


defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturb -boolean true
defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturbDate -date "`date -u +\"%Y-%m-%d %H:%M:%S +0000\"`"
killall NotificationCenter



(via https://heyfocus.com/blog/enabling-do-not-disturb-mode/)

Disable Do Not Disturb:


defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturb -boolean false
killall NotificationCenter



Now you could easily wrap this up as a script to enable or disable "Do Not Disturb" as a script that would work on anybody's machine regardless of system preferences. Here is an example of how to do that:

#!/bin/bash

set -eou pipefail

# From https://heyfocus.com/enabling-do-not-disturb-mode and
# https://apple.stackexchange.com/questions/145487

if [[ $(defaults -currentHost read ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturb) -eq 0 ]]; then
  defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturb -boolean true
  defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturbDate -date "`date -u +\"%Y-%m-%d %H:%M:%S +000\"`"
  killall NotificationCenter
  echo "Do Not Disturb is enabled. Run $0 to turn it off (OS X will turn it off automatically tomorrow)."
else
  defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturb -boolean false
  killall NotificationCenter
  echo "Do Not Disturb is disabled. Run $0 to turn it on again."
fi


Source: https://gist.github.com/ryangreenberg/5267f68a8e7b07ea66370b4eb5580ab9