select循环语句主要功能是创建选择菜单,在执行带有 select 循环语句脚本时,会输出按照数字列表。
语法格式:
select 变量名 [ in 菜单值列表 ]
do
语句
done
示例:选择mysql版本
[root@openEuler ~]# cat select1.sh
#!/bin/bash
select mysql_version in 5.6 5.7 8.0
do
echo $mysql_version
done
[root@openEuler ~]# bash select1.sh
1) 5.6
2) 5.7
3) 8.0
#? 2
5.7
#? 3
8.0
#? ^C
[root@openEuler ~]#
示例:选择水果,假设我们有如下水果可供选择:
Apple, Banana, Pear, Watermelons, Grape
[root@openEuler ~]# cat select2.sh
#!/bin/bash
echo "Choose your favorite fruit: "
select fruit in Apple Banana Pear Watermelons Grape
do
echo
echo "Your favorite fruit is $fruit."
#break
done
[root@openEuler ~]# bash select2.sh
Choose your favorite fruit:
1) Apple
2) Banana
3) Pear
4) Watermelons
5) Grape
#? 1
Your favorite fruit is Apple.
#? 2
Your favorite fruit is Banana.
#? 4
Your favorite fruit is Watermelons.
#? ^C
在上面的示例中,没有办法在选择了水果后退出,它会一直让我们选择。如果我们希望选择后就退出,则需要在脚本添加 break
[root@openEuler ~]# cat select2.sh
#!/bin/bash
echo "Choose your favorite fruit: "
select fruit in Apple Banana Pear Watermelons Grape
do
echo
echo "Your favorite fruit is $fruit."
break
done
[root@openEuler ~]# bash select2.sh
Choose your favorite fruit:
1) Apple
2) Banana
3) Pear
4) Watermelons
5) Grape
#? 3
Your favorite fruit is Pear.
[root@openEuler ~]#