記事の読む時間:5分
なぜこの話?
皆さんはご存知ないかもしれませんが、私は時々よく物を忘れます。そのため、リマインドを使った方が便利だと思います。
ただ、スクリプトや開発をしているときに、別の画面に移動したくありません。なるべく早くリマインドを作りたいと思いました。そこで考えました。何ができるでしょうか?IDEで?シェルで?リマインドは可能でしょうか?
この短い記事では、いくつかのコマンドを試してみて、その後で私の意見を述べます。読んだらコメントを書いてください!皆さんがどんな方法を使っているかも気になります。
プラン
- VS Codeでのリマインド
- シェルのコマンドでリマインドしてみる
- まとめ
本日の記事ではこの話題について説明します。一緒にいろいろな解決方法を見てみましょう。
VS Codeでのリマインド
VS Codeにはリマインド用の拡張機能があります。しかし、あまり人気はないようです。なぜでしょうか?
個人的には、コマンドだけで素早くリマインドを設定したいです。リマインドにおいて、UIはそれほど重要ではないと思います。
シェルでのリマインド
シェルにはさまざまなコマンドがあります!面白いですね。一緒にいくつか試してみましょう。
コマンド at
atコマンドは、一度だけジョブを実行したいときに使います。
使い方
# ジョブを追加する
echo "echo 'test' >> ~/test.txt" | at 15:26
# ジョブの一覧を表示する
atq
# ジョブを削除する
atrm [ジョブ番号]
macOSでは設定を変更する必要があります:
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.atrun.plist
このコマンドを実行しないと、atは動作しません。
意見
atは便利ですが、目的はコマンドを実行することであり、リマインドのためではありません。また、自分の端末にテキストを表示することは難しいです。
コマンド remind
remindコマンドは、リマインドを作るためのものです。
使い方
# リマインドを追加する
echo "REM 2025-11-30 MSG coffee at 16:25" >> ./test.rem
# リマインドを実行する
remind ./test.rem
# アラームモードで実行
remind -a ./test.rem
意見
問題は、Macではあまり動作しません。私も試しましたがうまくいきませんでした。原因はMacがこのコマンドを完全にサポートしていないためだと思います。
もし理由や正しい方法をご存知の方がいれば、ぜひ教えてください。よろしくお願いします。
コマンド crontab
crontabはよく使われますが、もう一度説明します:
crontabは定期的にジョブを実行するためのコマンドで、一度だけではなく、毎日決まった時間にジョブを実行できます。サーバーでもよく使われます。
使い方
# crontabの編集
crontab -e
# crontabの一覧表示
crontab -l
# 全部削除、一部を削除したい場合はファイルを編集する必要があります
crontab -r
ファイルフォーマットは:
* * * * * 実行するコマンド
- - - - -
| | | | |
| | | | +---- 曜日 (0-7) (日曜日=0 または 7)
| | | +------ 月 (1-12)
| | +-------- 日 (1-31)
| +---------- 時 (0-23)
+------------ 分 (0-59)
意見
自分の端末にテキストを表示することはできません。このコマンドは、毎回ジョブを実行したい場合には便利ですが、リマインドは一度だけで十分なはずです。また、リマインドを追加するたびにファイルを編集する必要があるのは少し不便だと思います。
コマンド sleepと&
最後に、一番簡単で手軽な方法は、sleepと&を使う方法です。これで自分でリマインドできます!
使い方
(sleep 60 && echo "Hello! Time's up") &
# 秒単位が不便なら、「m」=分、「h」=時間も使えます。
(sleep 1m && echo "Hello! Time's up") &
(sleep 4h && echo "Hello! Time's up") &
意見
コマンドを覚える必要はありますが、簡単で便利です。また、プログラミングをしているときに覚えたいことがあれば、シェルを開いてそのコマンドを書けばいいです。
まとめ
私の結論としては、リマインドのために一番便利な方法は、sleepと&を使うことです。この方法はまだ完璧ではありませんが、十分実用的だと思います。
皆さんはどんな方法を使っていますか?
この記事は面白かったでしょうか?
