0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめに

Linuxで作業をする際、dateコマンドってよく使いますよね。

$ date
2024年 7月 7日 日曜日 11時23分54秒 JST

必要最低限の表示で便利なんですが、無機質だと思ったことはありませんか?

時間というものは、単なる数字の並びではありません。
月や日付、曜日などによって、あなた自身が持つ感情というものがあるはずです。

そこで今回は、そんな あなたの感情を映し出す、世界でたった一つのコマンド「emotional_date」 を作ってみましょう!

emotional_date: 時を彩る魔法のコマンド

emotional_date は、単なる時刻表示にとどまりません。
時間帯や曜日に合わせて、出力結果が変化する、まさに 生きた時計 となるでしょう。

実装例

今回は、シェルスクリプトを使って emotional_date を実装してみましょう。

#!/bin/bash

# あなたの好きな絵文字を設定
morning_emoji="☀️"
daytime_emoji="💪"
evening_emoji="🌙"
night_emoji="😴"

# 曜日ごとのメッセージを設定
mon_message="月曜日は新たな挑戦の日! 💪"
tue_message="火曜日も着実に前進! 🚀"
wed_message="週の真ん中水曜日、一息つこう☕"
thu_message="木曜日、週末はもうすぐそこ! 🎉"
fri_message="華金だ! 🍻"
sat_message="楽しい週末の始まり! 🥳"
sun_message="ゆっくり休んでリフレッシュ! 🛀"

year=$(date +%Y)
month=$(date +%m)
day=$(date +%d)
hour=$(date +%H)
minute=$(date +%M)
second=$(date +%S)

weekday=$(date +%a)

# 時間帯に応じた絵文字を設定
if [ $hour -ge 6 -a $hour -lt 12 ]; then
  emoji=$morning_emoji
elif [ $hour -ge 12 -a $hour -lt 18 ]; then
  emoji=$daytime_emoji
elif [ $hour -ge 18 -a $hour -lt 22 ]; then
  emoji=$evening_emoji
else
  emoji=$night_emoji
fi

# 曜日ごとのメッセージを取得
case $weekday in
  "月") message=$mon_message ;;
  "火") message=$tue_message ;;
  "水") message=$wed_message ;;
  "木") message=$thu_message ;;
  "金") message=$fri_message ;;
  "土") message=$sat_message ;;
  "日") message=$sun_message ;;
  *) message="今日も一日頑張ろう!" ;;
esac

# 時刻、絵文字、曜日メッセージを表示
echo "${emoji} ${year}${month}${day}${hour}${minute}${second}${message}"

実行結果

$ sh emotional_date.sh 
☀️ 2024年07月07日 11時52分30秒 ゆっくり休んでリフレッシュ! 🛀

カスタマイズのススメ

emotional_date の真髄は、 あなただけのオリジナル時計を作れる ところにあります。上記スクリプトを自由に編集して、あなただけの emotional_date を完成させましょう!

  • 絵文字変更: 各時間帯に表示する絵文字を、あなたの気分に合うものに変更できます。
  • メッセージ追加: 曜日ごとに表示するメッセージを、あなたを励ます言葉や、週末の予定など、自由に設定できます。
  • 天気予報の表示: 天気予報APIを取得して、現在の天気と気温を表示するように改造することも可能です。
  • 目標までのカウントダウン: 次回リリース日や大切なイベントまでの日数を表示して、モチベーションを高めることもできます。

まとめ

emotional_date は、時間という概念に、あなたの感情という彩りを加える、まさに魔法のコマンドです。

さあ、あなたもこのコマンドをカスタマイズ、dateコマンドを、より豊かでエモーショナルなものに変えてみましょう!

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?