select in 循环用来增强交互性,它可以显示出带编号的菜单,用户输入不同的编号就可以选择不同的菜单,并执行不同的功能,select in是shell 独有的一种循环,非常适合终端(terminal)其他语言没有
语法
select var in menu1 menu2 ……
do
命令
done
注意:select是无限循环(死循环),输入控制,或者输入的值无效都不会结束循环只有遇到break语句,或者按下Ctrl+D组合键才能结束循环
执行命令过程中:终端会输出 #? 代表可以输入选择的菜单号
echo "你的爱好是什么?"
select hobby in "唱歌" "跳舞" "rap" "篮球"
do
echo $hobby
break;
done
echo "你的爱好是${hobby}"
select in 配合case in
echo "你的爱好是什么?"
select hobby in "唱" "跳" "rap" "篮球"
do
case $hobby in
"唱")
echo "鸡叫"
break
;;
"跳")
echo "小心鸡脚"
break
;;
"rap")
echo "不敢上本科"
break
;;
"篮球")
echo "美国小队"
break
;;
*)
echo "小黑子!!"
;;
esac
done