创建一个 Bash 脚本,该脚本将根据一周中的哪一天打印一条消息(例如,周三为“Happy hump day”,周五为“TGIF”等)。如何在 bash 脚本上打印星期几的消息?
答案1
一周中的当前日期可以是 1 到 7 之间的整数(1 是星期一),其中
printf -v weekday '%(%u)T' -1
假设您运行的是bash
4.2 或更高版本。
要根据此编号分配不同的消息并打印它:
case $weekday in
3) message='Happy hump day' ;;
5) message='TGIF' ;;
*) message='Some default message'
esac
printf 'Message of the day: %s\n' "$message"
答案2
声明一个消息数组,然后使用与实际星期几相对应的消息。date +%w
返回一个数字 0 .. 6(其中 0 对应星期日),您可以将其用作索引。
#! /bin/bash
messages=(Sunday
IFHM
Tuesday
'Happy hump day!'
Thursday
TGIF
Saturday)
echo "${messages[$(date +%w)]}"