Shell中select循环语句实例

select循环语句实例

Bash提供select循环,语法如下:

select VAR in LIST

do

​ command1

​ command2

​ ...

​ commandN

done

select循环语句由如下特点:

  1. select语句使用Bash内部变量PS3的值作为它的提示符信息。

  2. 打印到屏幕上的列表LIST中的每一项都会加上一个数字编号。

  3. 当用户输入的数字和某一个数字编号一致时,列表中响应的项即被赋予变量VAR。

  4. 如果用户输入为空,将重新显示列表LIST中的项和提示符信息。

  5. 可以通过添加一个退出选项,或者Ctrl+C、Ctrl+D组合键退出select循环。

如:

[root@rs1 test]# cat select.sh 
#!/bin/bashPS3="Run command:"
clear
select choice in date w hostname "uname -r" Exit
do
case $choice in
    date)
    $choice
    ;;
    w)
    $choice
    ;;
    "uname -r")
    $choice 
    ;;  
    hostname)
    $choice
    ;;
    Exit)
    echo "Bye!"
    exit 0
    ;;
esac
done

执行结果:

[root@rs1 test]# bash select.sh 
//清理屏幕
1) date
2) w
3) hostname
4) uname -r
5) Exit
Run command:1
Fri Jul  6 04:01:01 CST 2018
Run command:2
 04:01:02 up  9:25,  2 users,  load average: 0.00, 0.01, 0.05
USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0     03:03    6.00s  0.04s  0.00s w
root     pts/1     03:03   57:10   0.00s  0.00s -bash
Run command:3
rs1
Run command:4
3.10.0-123.el7.x86_64
Run command:5
Bye!

上述shell脚本也可以如此编写:(运行结果无差别)

[root@rs1 test]# cat select_1.sh 
#!/bin/bashPS3="Run command:"
clear
​
select choice in date w hostname "uname -r" "exit"
do
    $choice
done


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值