shell编程----select语句

目录标题


select语句

  select in 循环用来增强交互性,它可以显示出带编码的菜单,用户输入不同的编号就可以选择不同的菜单,并执行不同的功能。select in是shell独有的一种循环,非常适合终端这样的交互场景,c语言、c++、java、pytho、c#等其他编程语言中时没有的。

select in循环的用法如下:

select variable in value_list
do
	statements
done
#!/bin/bash
echo "what is your favorite os?"
select name in "linux" "windows" "mac os" "unix" "android"
do
	echo $name
done
echo "you have selected $name"

结果:
what is your favorite os?

  1. linux
  2. windows
  3. mac os
  4. unix
  5. android
    #? 3
    mac os
    #? 5

  #?用来提示用户输入菜单编号;ctrl+d组合键,作用是结束select in循环。
  每次循环时select都会要求用户输入菜单编号,并使用环境变量ps3的值作为提示符,ps3的默认值为#?,修改ps3的值就可以修改提示符。

#!/bin/bash
echo "what is your favorite os?"
select name in "linux" "windows" "mac os" "unix" "android"
do
	case $name in
		"linux")
			echo "linux时一个类unix操作系统,它开源免费,运行在各种服务器设备和嵌入式设备"
			break
			;;
		 "windows")
                        echo "windows是微软开发的个人电脑操作系统,它是闭源收费的"
			break
                        ;;  
		 "mac os")
                        echo "mac os是苹果公司机与unix开发的一款图形界面操作系统,只能运行与苹果提供的硬件志上"
			break
                        ;;  
		 "unix")
                        echo "unix是操作系统的开山鼻祖,现在已经逐渐退出历史舞台,只应用在特殊舞台"
			break
                        ;;  
		 "android")
                        echo "android是有google开发的手机操作系统,目前已经占据了70%的市场份额"
			break
                        ;;  
		*)
			echo "输入错误"
	esac
done
echo "you have selected $name"

结果:
what is your favorite os?

  1. linux
  2. windows
  3. mac os
  4. unix
  5. android
    #? 4
    unix是操作系统的开山鼻祖,现在已经逐渐退出历史舞台,只应用在特殊舞台
    you have selected unix

what is your favorite os?

  1. linux
  2. windows
  3. mac os
  4. unix
  5. android
    #? 6
    输入错误
    #? 2
    windows是微软开发的个人电脑操作系统,它是闭源收费的
    you have selected windows
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值