1. 程式人生 > 其它 >流程控制之select語句

流程控制之select語句

目錄

一 語法

select表示式是bash的一種擴充套件應用,擅長於互動式場合。使用者可以從一組不同的值中進行選擇

select var in ...
do
	...
	break
done

二 案例

案例1:

[root@m01 ~]./select.sh 
#!/bin/bash
PS3="請輸入操作編號>>>:"

select choice in {"退出","取款","轉賬","查詢"}
do
	
	case $choice in
	"退出")
		break
  	    ;;
	"取款")
		echo "正在取款"
		;;
	"轉賬")
		echo "正在轉賬"
		;;
	"查詢")
		echo "正在查詢餘額"
		;;
   	*)
		echo "指令有誤,請重新輸入"
	esac
done

[root@m01 ~]./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變數的值做提示符
echo

select var
do
    echo
    echo "your choose is $var"
    echo "OK"
    echo
    break # 跳出select,否則是死迴圈
done

[root@egon /]# ./select.sh 蘋果 梨 蔬菜 香蕉 茄子

1) 蘋果
2) 梨
3) 蔬菜
4) 香蕉
5) 茄子
choose one: 1

your choose is 蘋果
OK