Shell select介绍
select in循环用来增强交互性,它可以显示出带编号的菜单,用户输入不同的编号就可以选择不同的菜单,并执行不同的功能
select in是Shell独有的一种循环,非常适合终端( Terminal )这样的交互场景,C语言、C++、Java、Python、C#等其它编程语言中是没有的
Shell select in循环的用法
se lect variable in value_list
do
statements
done
variable表示变量t ,value_ list 表示取值列表,in是Shell中的关键字
例:
说明:
- #?用来提示用户输入菜单编号; ^D表示按下CtrI+D组合键,它的作用是结束select in循环
- 运行到select语句后,取值列表value_ list 中的内容会以菜单的形式显示出来,用户输入菜单编号,就表示选中了某个值,这个值就会赋给变量variable,然后再执行循环体中的statements ( do和done之间的部分)。
- 每次循环时select都会要求用户输入菜单编号,并使用环境变量t PS3的值作为提示符,PS3的默认值为#?,修改PS3的值就可以修改提示符。
- 如果用户输入的菜单编号不在范围之内,例如上面我们输入的9,那么就会给variable赋一个空值;如果用户输入一个空值(什么也不输入,直接回车),会重新显示一遍菜单