David Walsh Blogは2月24日(米国時間)、「View Mac Calendar from Command Line」において、macOSのカレンダーアプリケーションが管理するスケジュールデータをコマンドラインから表示させる方法を紹介した。icalBuddyと呼ばれるツールを使って指定した日や期間のスケジュールをコマンドラインに出力させている。

取り上げられているインストール方法および使用方法は次のとおり。

icalBuddyのインストールには、Homebrewと呼ばれるパッケージ管理システムが使われている。Homebrewを利用するには、先にHomebrewをインストールしておく必要がある。

macOSにはデフォルトでカレンダーアプリケーションが同梱されており、複数のアカウントの併用やカレンダーのインポートが可能。

macOSのカレンダーアプリケーション

コマンドラインではcalと呼ばれるFreeBSD由来のカレンダーコマンドを利用できる。

FreeBSD由来のカレンダーコマンド

しかし、macOSのカレンダーアプリケーションとcalコマンドは連動しておらず、別々にデータを管理している。記事で取り上げられているicalBuddyは以前から存在しているツールで、macOSのカレンダーアプリケーションデータをコマンドラインから閲覧することができる。

なお、最近のmacOSでは、セキュリティおよびプライバシー機能の強化によって設定を変更しなければカレンダーデータにアクセスできなくなっている。icalBuddyを使用するには、システム環境設定から「セキュリティとプライバシー」を選択し、「カレンダー」の項目でicalBuddyを使用するターミナルアプリケーションに対してアクセス許可を与える必要がある。

システム環境設定の「セキュリティとプライバシー」においてカレンダーにアクセスするターミナルアプリケーションをアクセス許可を与える

設定変更後の最初にアクセス時に表示されるダイアログ

icalBuddyを実行すると次のような出力を得ることができる。

icalBuddyコマンドの実行例

icalBuddyには日時や期間を指定してスケジュールデータを表示させることができるほか、完了していないタスクを表示する機能、設定ファイルを編集する機能なども用意されている。