LoginSignup
31
27

More than 1 year has passed since last update.

Macでコマンド実行が終わったら教えてほしい時、あるいはCLI上でリマインドをセットしたい時のTips

Last updated at Posted at 2021-06-30

このTipsの利用シーン

※Mac前提です

  • CLIでビルドしているがビルド時間が数十分かかって待ち時間がムダ。ただ、ビルドが終わったらすぐに気付きたい
  • CLI上で3分、10分とかのリマインドをしたい

動作環境

macOS Big Sur(11.2.3)

AppleScriptを使えば通知できます

AppleScriptを使えばMac上で通知を表示させることができます。
また、AppleScriptを呼び出すためのosascriptが用意されているので、そちらを使えばCLI上から通知を表示させることができます。

やり方

通知用の関数を用意する

.bashrc.zshrc に関数を追加します。
(ここでは.bashrcのケースで記載しています)

.bashrcを開いて、

vi ~/.bashrc

↓の関数を追記して、

~/.bashrc
function remind() { # 関数名は好きにいじってください
  description="通知です" # デフォルトの文字は好きにいじってください
  if [ $# != 0 ]; then
    description=$1
  fi
  command /usr/bin/osascript -e "display notification \"$description\" with title \"Remind🔥\"" # タイトルも好きにいじってください
}

反映する

source ~/.bashrc

2022/11/11追記

こちらにある通りsound nameを設定することで通知音も付け加えることができます。

command /usr/bin/osascript -e "display notification \"$description\" with title \"Remind🔥\" sound name \"Blow\""

あとは呼び出すだけ

作成した関数を呼び出すだけです。
※関数名を変更した場合はこちらも適宜読み替えてください

# デフォルト通知
remind
# 任意のメッセージを表示
remind 任意のメッセージ

無事通知されましたね!
image.png

利用シーン

実行時間の長いシェルの完了を通知させたい時

shellの後にremindをつけるだけ

sh 実行時間の長いシェル.sh; remind Shellの実行が完了しました

カップラーメンを待ちたい時

sleepの後にremindをつけるだけ

sleep 180; remind 時間だよ

参考にさせて頂いた記事

ムダな時間を減らして頂きありがとうございます:bow:

31
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
31
27