Terminal Notifier
Table of Contents
Terminal Notifier is a command-line tool to send macOS notifications, which are available since Mac OS X 10.8 and newer, using the shell. Useful when something happens in a long running script you wrote.
For example, you could get a notification every time rkhunter
does a check which opens the corresponding log file.
Or use it when you write a cronjob for something. The possibilities are endless.
Everything you need to install this is Homebrew and the following command:
brew install terminal-notifier
Usage
terminal-notifier -[message|list|remove] [VALUE|ID|ID] [options]
Either of these is required (unless message data is piped to the tool):
-help Display this help banner.
-message VALUE The notification message.
-remove ID Removes a notification with the specified ‘group’ ID.
-list ID If the specified ‘group’ ID exists show when it was delivered,
or use ‘ALL’ as ID to see all notifications.
The output is a tab-separated list.
Optional:
-title VALUE The notification title. Defaults to ‘Terminal’.
-subtitle VALUE The notification subtitle.
-sound NAME The name of a sound to play when the notification appears. The names are listed
in Sound Preferences. Use 'default' for the default notification sound.
-group ID A string which identifies the group the notifications belong to.
Old notifications with the same ID will be removed.
-activate ID The bundle identifier of the application to activate when the user clicks the notification.
-sender ID The bundle identifier of the application that should be shown as the sender, including its icon.
-appIcon URL The URL of a image to display instead of the application icon (Mavericks+ only)
-contentImage URL The URL of a image to display attached to the notification (Mavericks+ only)
-open URL The URL of a resource to open when the user clicks the notification.
-execute COMMAND A shell command to perform when the user clicks the notification.
When the user activates a notification, the results are logged to the system logs.
Use Console.app to view these logs.
Note that in some circumstances the first character of a message has to be
escaped in order to be recognized.
An example of this is when using an open bracket, which has to be escaped like
so:
'\['