macOSでは、さまざまなアプリケーションが「通知」システムを利用しています。例えばメールが新しく届いたタイミングや、イベントの時間が近づいたタイミングで、画面右上に通知バナーが表示され、素早く情報を知ることができるのです。
UNIX系のOSではターミナルプログラムは通常、標準出力にメッセージを出力しますが、macOSの場合、この通知メッセージを表示することも可能となっています。自作のシェルスクリプトからも表示することができるので、使い方を覚えておけば、さまざまなタイミングで自分好みの通知をデスクトップ上に表示することができるようになります。
以下その方法を説明します。
目次
AppleScriptを使用する
macOSでコマンドラインから通知を表示するにはAppleScriptを使用します。ターミナルからAppleScriptコマンドを実行することができる「oascript」を使い、以下のように実行します。
メッセージのみを表示する場合次のように実行します。
osascript -e 'display notification "テスト通知です"'
タイトルを追加することもできます。
osascript -e 'display notification "テスト通知です" with title "title"'
タイトルとサブタイトルを追加することもできます。
osascript -e 'display notification "テスト通知です" with title "タイトル" subtitle "サブタイトル"'
なお通知バナーのスタイルはシステム環境設定で変更することができます。
▲「システム環境設定 > 通知 > スクリプトエディタ」で通知スタイルを変更します。
まとめ
AppleScriptを使用すればコマンドラインからmacOSの通知を表示することができます。シェルやRuby、PHPなど各種プログラミング言語からも呼び出すことができますので、例えばHazelやKeyboard Maestroなどからターミナルを経由せずに呼び出されるシェルスクリプトを作成する場合に特に便利です。