亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Linux shell select菜單選擇實現(xiàn)代碼

 更新時間:2021年07月28日 13:34:17   投稿:mdxy-dxy  
主要介紹了Bash Shell中的select命令簡單使用示例,通常用于流程控制功能的實現(xiàn),需要的朋友可以參考下

假設(shè)需要在shell下實現(xiàn)一個菜單,估計會使用 循環(huán)和read實現(xiàn)交互,在學(xué)習(xí)中發(fā)現(xiàn)一個select可在shell下很方便的實現(xiàn)這種交互菜單

1. select 語法

select var in ...
do
	#your code
done

2. 示例

#! /bin/bash
 
echo "what is your favorite color :" 
select color in "red" "blue" "green" "white" "black"
 do
     echo "you choose is $color"
     break
 done

Bash Shell中的select命令簡單使用示例

前言

今天剛好寫了一個自動化打包腳本,再次使用到了bash shell,好幸福的感覺。這里主要是想介紹一下select命令,這個命令
可以幫助我們完成菜單選擇功能。

格式
我今天也是第一次使用select流程控制,在php、Java、C這些語言中并沒有實現(xiàn)select功能。Bash Shell中,select格式如
下:

select $var in ${list[@]}
do
statements that can use $var
done

在select執(zhí)行時,會根據(jù)list數(shù)組給出選擇菜單,用戶選擇后的結(jié)果保存在$var變量中,然后執(zhí)行statements語句。執(zhí)行完成
后,再次給出菜單,等待用戶選擇。如果用戶想跳出選擇循環(huán),需要在循環(huán)體中根據(jù)條件增加break語句。
示例
給出一個select的示例,大家可以參考:

#!/bin/bash
fruits=(
"apple"
"pear"
"orange"
"watermelon"
)
echo "Please guess which fruit I like :"
select var in ${fruits[@]}
do
if [ $var = "apple" ]; then
echo "Congratulations, you are my good firend!"
break
else
echo "Try again!"
fi
done

例子2

#!/bin/sh

select ch in "begin" "end" "exit"
do
    case $ch in
    "begin")
        echo "start something"
        ;;
    "end")
        echo "stop something"
        ;;
    "exit")
        echo "exit"
        break;
        ;;
    *)
        echo "ignorant"
        ;;
    esac
done;

運行效果:

yuxuecheng@linux:~/shellSource> ./select_test.sh
1) begin
2) end
3) exit
#? 1
start something
#? 2
stop something
#? 4
ignorant
#? begin
ignorant
#? 3
exit

說明:select是循環(huán)選擇,一般與case語句使用。

相關(guān)文章

最新評論