我目前正在检查.sh脚本只是为了做一些基本的事情。
copy/paste
我的问题是我试图使用系统当前时间在if语句中使用,并取决于不同输出的时间。
现在,脚本会输出所有“ good ....”回声,并且不会根据时间输出单个回声。
感谢您的帮助。
答案 0 :(得分:2)
问题出在您的条件上,所有条件都允许任何给定值,您是否想使用&&
而不是||
?
答案 1 :(得分:0)
如果您使用elif
构造来编写它,并从以后开始,然后逐步解决,那么会容易得多。
chmod +x catbash.sh
currenttime=$(date +%H:%M)
if [[ "$currenttime" > "19:59" ]]; then echo "Good Night ${USER}"
elif [[ "$currenttime" > "16:59" ]]; then echo "Good Evening ${USER}"
elif [[ "$currenttime" > "11:59" ]]; then echo "Good Afternoon ${USER}"
elif [[ "$currenttime" > "05:59" ]]; then echo "Good Morning ${USER}"
else echo "Good Night ${USER}"