select表示式是bash的一種擴充套件應用,擅長於"互動式場合"。使用者可以從一組不同的值中進行選擇
select可以實現選單的功能;
select可以與case結合使用;
ps3=""
select var in 列表
do 使用者選擇後,要執行的命令
break
done
#ps3與使用者互動,預設為 #?,select預設使用ps3與使用者互動,定義變數,傳遞給select var
#select負責列印選單,序號) $var
#in可以省略,使用位置引數
案例1:
[root@egon /]# cat select.sh
#!/bin/bash
ps3='choose one: '
select var in #選單
do echo "your choose is $var"
echo "ok"
break # 跳出select,否則是死迴圈,可以省略
done
[root@egon /]# ./select.sh
1) a
2) b
3) c
4) d
choose one: 3
your choose is c
ok
案例2:若省略 in list 則select會把 $@ 當做列表項
[root@egon /]# cat select.sh
#!/bin/bash
ps3='choose one: ' # select預設使用ps3變數的值做提示符
select var
do echo "your choose is $var"
echo "ok"
break # 跳出select,否則是死迴圈
done
[root@egon /]# ./select.sh 蘋果 梨 蔬菜 香蕉 茄子
1) 蘋果
2) 梨
3) 蔬菜
4) 香蕉
5) 茄子
choose one: 1
your choose is 蘋果
ok
案例3:select與case
ps3="please select a number: "
select name in zhangsan lisi wangwu zhaoliu
do case $name in
zhangsan)
echo "hello, zhangsan."
;;lisi)
echo "hello,lisi."
;;wangwu)
echo "hello, wangwu."
;;zhaoliu)
echo "hello, zhaoliu."
;;*)
echo "sorry, there is no such person."
;;esac
done
[root@hass-11 script]# sh se2.sh
1) zhangsan
2) lisi
3) wangwu
4) zhaoliu
please select a number: 2
hello,lisi.
please select a number: 3
hello, wangwu.
please select a number:
shell 流程控制之select語句
語法 一 語法 select表示式是bash的一種擴充套件應用,擅長於互動式場合。使用者可以從一組不同的值中進行選擇 select var in do break done 案例 bin bash ps3 choose one select預設使用ps3變數的值做提示符 echo select va...
mysql流程控制 MySQL 流程控制
流程控制 1 順序結構 程式從上往下依次執行 2 分支結構 多條路徑選擇一條 3 迴圈結構 在規定範圍內重複執行 一 分支結構 1 if函式 功能 實現分支流 語法 if 表示式1,表示式2,表示式3 執行順序 執行表示式1,成立返回表示式2的值,不成立則返回表示式3的值 應用 任何地方 例 if ...
Python流程控制語句流程控制語句
流程控制語句1 if語句 if 語句基本用法 if 表示式 語句塊其中,表示式可以是乙個單純的布林值或變數,也可以是比較表示式或邏輯表示式,如果表示式為真,則執行 語句塊 如果表示式的值為假,就跳 過 語句塊 繼續執行後面的語句。2 if else語句 if else 語句基本用法 if 表示式 語...