sql select中嵌套select_Centos中shell利用select实现菜单选择

Linux的shell中利用select实现菜单选择

select循环主要用于创建菜单,按数字顺序排列的菜单项将显示在标准错误上,并显示PS3 提示符,等待用户输入。用户输入菜单列表中的某个数字,执行相应的命令。

select是个"无限循环",因此要用break命令退出循环,或用exit 命令终止脚本。

select 经常和case 联合使用。

补充:

case和select结构在技术上说并不是循环, 因为它们并不对可执行代码块进行迭代。

但是和循环相似的是,它们也依靠在代码块顶部或底部的条件判断来决定程序的分支。

格式:

select variable [in list]

do

TT class="REPLACEABLE" >command...

break

done

案例1:

提示用户输入选择的内容,放在变量列表中。

注意:select命令使用PS3提示符

#!/bin/bash

#select 案例

#auth:odysee

#设置提示符字串

PS3="请选择您喜欢的生物:"

echo "=========================="

select thing in "cat" "dog" "girl"

do

echo

echo "您喜欢的生物是:${thing}"

echo "bye!"

echo "=========================="

#如果这里没有break将不停循环进行选择

break

done

a5e93cbc3af178e4d5c65811ae783c16.png

执行脚本

7de79aa0f4d73826769ce0ea8e7ac3ae.png

案例2:

利用select和case模拟菜单

#!/bin/bash

#利用select和case模拟实现一个菜单

#auth:odysee

PS3="请输入选项:"

select number in "install" "uninstall" "update" "exit"

do

case $number in

"install")

echo "installing...";;

"uninstall")

echo "uninstalling...";;

"update")

echo "updating...";;

"exit")

break;;

*)

echo "no selection!!!"

esac

done

clear

d120afc148924595e397742d1937f775.png

执行脚本

7a02e7d574e0fe9c270f68c804a32cd2.png

测试完成

关于案例1有一个弊端,就是输入非指定数字未做判断。

欢迎大家给予宝贵的意见或者建议。

欢迎大家补充或者共享一些其他的方法。

感谢支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值