在本教程中,我们将介绍Bash中select构造的基础,select构造允许您生成菜单。平台是:Linux操作系统。
Bash select构造
select构造从项目列表中生成菜单,它具有与for循环几乎相同的语法:
select ITEM in [LIST]
do
[COMMANDS]
done
[LIST]可以是由空格、数字范围、命令输出、数组等分隔的一系列字符串,可以使用PS3环境变量设置select构造的自定义提示。
调用select构造时,列表中的每个项目都会打印在屏幕上(标准错误),并带有数字。
如果用户输入的数字与显示的项目之一的编号相对应,则[ITEM]的值将设置为该项目,所选项目的值存储在变量REPLY中,否则,如果用户输入为空,则再次显示提示和菜单列表。
select循环将继续运行并提示用户输入,直到执行break命令为止。
为了演示select构造的工作原理,让我们看下面的简单示例:
PS3="Enter a number: "
select character in Sheldon Leonard Penny Howard Raj
do
echo "Selected character: $character"
echo