0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

bashrcにいろいろ書いて正月が終わらないようにしてみた

Posted at

あけましておめでとうございます

三が日が終わって三連休も終わりに差し掛かってきて現実逃避をしたくなってbashrcをいろいろいじってみました。

正月を終わらせたくない

まずは日付を変えよう。

今日は 2024-01-01 ということにしておく

以下をターミナルで実行する。

echo "alias date=\"echo -n '2024-01-01 ';date '+%H:%M:%S'\"" >> ~/.bashrc 

ターミナルを開き直す or bashrc を読みこみ直す

source ~/.bashrc
$ date
2024-01-01 15:41:35

これでいつ date を実行しても今日は 2024-01-01 だと教えてくれるようになった。よし。
※ 当然だけど \ 付きで実行すると alias じゃない date が実行されるのであくまで気分の問題。

ターミナルログイン時に新年の挨拶がされるようにする

これだと date コマンドを打たないと正月であることを忘れてしまう。
ターミナルにログインしたら HAPPY NEW YEAR と出るようにしよう。

使うのは banner コマンド。
入っていなければインストールする。

sudo apt install sysvbanner

banner コマンドは引数で指定した文字列を # で表現してくれる。 # は変更も可能。
たとえば

banner hello

と実行すると


 #    #  ######  #       #        ####
 #    #  #       #       #       #    #
 ######  #####   #       #       #    #
 #    #  #       #       #       #    #
 #    #  #       #       #       #    #
 #    #  ######  ######  ######   ####

と表示される(英字小文字はすべて大文字に変換される)。

banner コマンドを使って盛大に A HAPPY NEW YEAR と表示しよう。

banner "A HAPPY" "NEW YEAR"

実行すると以下のようになる。

   #            #     #    #    ######  ######  #     #
  # #           #     #   # #   #     # #     #  #   #
 #   #          #     #  #   #  #     # #     #   # #
#     #         ####### #     # ######  ######     #
#######         #     # ####### #       #          #
#     #         #     # #     # #       #          #
#     #         #     # #     # #       #          #

#     # ####### #     #         #     # #######    #    ######
##    # #       #  #  #          #   #  #         # #   #     #
# #   # #       #  #  #           # #   #        #   #  #     #
#  #  # #####   #  #  #            #    #####   #     # ######
#   # # #       #  #  #            #    #       ####### #   #
#    ## #       #  #  #            #    #       #     # #    #
#     # #######  ## ##             #    ####### #     # #     #

いいじゃないか。これがターミナルに入るたびに表示されれば正月であることを忘れない。

新年の挨拶がゆっくり表示されるようにしよう

さきほどのbannerコマンドだけでもいいのだが、一瞬で表示されてしまってそのうち見なくなってしまう。もうひと工夫加えてA HAPPY NEW YEAR がbannerでそれぞれ表示されたあと1秒スリープして、正月であることを噛み締められるようにしよう。

for WORD in A HAPPY NEW YEAR
do
  banner $WORD
  sleep 1
  clear
done

これをbashrcに追記しよう。

echo "for WORD in A HAPPY NEW YEAR
do
  banner \$WORD
  sleep 1
  clear
done" >> ~/.bashrc

これで A HAPPY NEW YEAR と4秒(sleep 1秒×4)かけて表示されてからターミナルが表示されるようになった。

ターミナルから抜けるときも正月であることを忘れない

ログイン時には A HAPPY NEW YEAR と表示されるようになったけど、ターミナルを抜ける時には忘れてしまうかもしれない。

ということで以下を実行する

echo "trap 'echo ¥"明日もまだ正月だよ¥"; sleep 1; exit' EXIT" >> ~/.bashrc

こうしておくことでターミナルから抜ける時に 明日もまだ正月だよ と表示される。

~$ exit
明日もまだ正月だよ

Ctrl + D などで抜けたときも同じ。よし、これでまだ正月であることを忘れない。

最後に

明日から仕事頑張ろう…。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?