shell脚本if和switch语句编写案例
最近学着Linux的shell编程,学到循环和条件语句部分的时候,就想着⾃⼰写⼀个试试吧,于是就有了下⾯的关于星座判断的程序。(PS:程序并没有实现农历到阳历的转换,⽽且没有考虑闰年,只是⼀个单纯的简单编程)
#!/bin/sh
echo "这个程序是⽤来查询星座⽤的"
while [ "$mounth"=="OFF" ];
do
echo "请输⼊你要查询的⽉份"
read mounth
echo "请输⼊你要查询的⽇期"
read day
if [ "$day" -lt 1 ]
then
echo "你输⼊的⽇期有误"
fi
case "$mounth" in
1 )
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -le 19 ]
then
echo "你的星座是摩羯座"
else
echo "你的星座是⽔瓶座"
fi
;;
2 )
if [ "$day" -gt 28 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -ge 18 ]
then
echo "你的星座是⽔瓶座"
else
echo "你的星座是双鱼座"
fi
;;
3 )
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -le 20 ]
then
echo "你的星座是双鱼座"
else
echo "你的星座是⽩⽺座"
fi
;;
4 )
if [ "$day" -gt 30 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -le 19 ]
then
echo "你的星座是⽩⽺座"
else
else
echo "你的星座是⾦⽜座" fi
;;
5 )
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误" fi
if [ "$day" -le 20 ]
then
echo "你的星座是⾦⽜座" else
echo "你的星座是双⼦座" fi
;;
6 )
if [ "$day" -gt 30 ]
then
echo "你输⼊的⽇期有误" fi
if [ "$day" -le 21 ]
then
echo "你的星座是双⼦座" else
echo "你的星座是巨蟹座" fi
;;
7 )
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误" fi
if [ "$day" -le 22 ]
then
echo "你的星座是巨蟹座" else
echo "你的星座是狮⼦座" fi
;;
8 )
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误" fi
if [ "$day" -le 22 ]
then
echo "你的星座是狮⼦座" else
echo "你的星座是处⼥座" fi
;
;
9 )
if [ "$day" -gt 30 ]
then
echo "你输⼊的⽇期有误" fi
if [ "$day" -le 22 ]
then
echo "你的星座是处⼥座" else
echo "你的星座是天秤座" fi
;;
10 )
if [ "$day" -gt 31 ]
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -le 23 ]
then
echo "你的星座是天秤座"
else
echo "你的星座是天蝎座"
fi
;
;
11 )
if [ "$day" -gt 30 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -le 22 ]
then
echo "你的星座是天蝎座"
else
echo "你的星座是射⼿座"
fi
;;
12 )
if [ "$day" -gt 31 ]
then
echo "你输⼊的⽇期有误"
fi
if [ "$day" -le 21 ]
then
echo "你的星座是射⼿座"
else
echo "你的星座是摩羯座"
fi
;;
* )
echo "你的⽉份输⼊有误"
exit 1
;;
esac
shell最简单脚本done
exit 0
程序涉及的只是⽐较简单,就不详细说了。程序的⽬的是以下⼏点:
1、判断输⼊的⽉份和⽇期是否正确
2、根据输⼊的时间判断星座。
其实就是这么简单 纯粹⽤来⾃娱⾃乐的程序,如有问题,欢迎指正。。。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论