calコマンドでカレンダー表示と祝日表示 macOS/Linux/Unixシェルコマンド

macOSのターミナルでカレンダー表示できるcalコマンドのご紹介です。今まで使ってなかったのですが、これ、地味に便利ですwしかも祝日表示させる方法も見つけましたので、後半でご紹介いたします。

calコマンドまとめ

いきなり、calコマンドのまとめです。

項目コマンド
今月のカレンダーを表示$cal
指定した月のカレンダーを表示$ cal 3 2024
年間カレンダーを一覧で表示$ cal 2024
先月、当月、翌月のカレンダーを表示$ cal -3

とくに先月、当月、翌月のカレンダーを表示表示できる $ cal -3 が便利です。

祝日も表示させる

祝日も表示できないか調べてたところ、 こちらの記事 が大変参考になりました。ありがとうございます!以下、祝日を表示させるコマンドです。

bash
cal -3; curl -s https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv | iconv -f SHIFT-JIS -t UTF-8 | grep -E "`date -v-1m '+%Y/%-m/'`|`date '+%Y/%-m/'`|`date -v+1m '+%Y/%-m/'`"

内閣府が発行している祝日のcsvデータをcurlでフェッチし、iconvでshift-jisからutf-8へ文字エンコード処理を行います。そして、csvデータの中から、cal -3のカレンダー表示に合わせて先月、当月、翌月の祝日データをgrepでフィルタリングして表示させてます。

エイリアスに登録

祝日表示がかなり便利なので、シェルのエイリアスにcal3で登録しておきました。

.zshrc
alias cal3="cal -3; curl -s https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv | iconv -f SHIFT-JIS -t UTF-8 | grep -E \"\$(date -v-1m '+%Y/%-m/')|\$(date '+%Y/%-m/')|\$(date -v+1m '+%Y/%-m/')\""
$ source ~/.zshrc で設定を読み込み、cal3 を実行してみましょう。下図のように祝日も表示させることができました!

関連記事

最後までご覧いただきありがとうございます!

▼ 記事に関するご質問やお仕事のご相談は以下よりお願いいたします。
お問い合わせフォーム

Python学習にオススメの本をご紹介!
Pandasでデータサイエンスはじめよう!
スクレイピングにオススメの書籍

▼ Beautiful Soup4を使ったWebクローリングをはじめ、表データをpandasやOpenPyXL、matplotでデータ解析、グラフ表示などのスクレイピングのやり方が分かりやすく説明されてます。図解が多いのでPython初心者の方でも読み進められる内容となってます。