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/enabling-do-not-disturb-mode/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"Do Not DisturbDisturb" 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