2016-08-18博客作业

case 语句

条件判断语句

case 变量引用 in

PAT1)

分支1

;;

PAT2)

分支2

;;

*)

默认分支

;;

esac

 

case 支持glob 风格的通配符:

*       任意长度任意字符

?       任意单个字符

[]       指定范围内的任意单个字符

a|b   ab

 

例子:

/root/bin/testSelect.sh

#!/bin/bash

 

PS3="what do you want?"

select menu in aaa bbb ccc

do

  case $menu in

  aaa)

  echo "aaa 10$"

  echo $REPLY

  break

  ;;

 

  bbb)

  echo "bbb 20$"

  echo $REPLY

  break

  ;;

 

  ccc)

  echo "ccc 30$"

  echo $REPLY

  break

  ;; 

 

  *)

  echo "other 100$"

  echo $REPLY

  break

  ;;

 

  esac

 

done






select 循环与菜单

select variable in list

do

循环体命令

done

 

select 循环主要用于创建菜单,按数字顺序排列的菜单项将显示在标准错误上,并显示 PS3  提示符,等待用户输入

用户输入菜单列表中的某个数字,执行相应的命令

用户输入被保存在内置变量 REPLY 中。

 

select 是个无限循环,因此要记住用 break 命令退出循环,或用 exit 命令终止脚本。也可以按 ctrl+c退出循环。

select 经常和 case 联合使用与 for循环类似,可以省略 in list,此时使用位置变量

 

例子:

[root@localhost bin]# cat testSelect2.sh

#!/bin/bash

 

PS3="what do you want?"

select menu

do

  case $menu in

  aaa)

  echo "aaa 10$"

  echo $REPLY

  echo $1

  break

  ;;

 

  bbb)

  echo "bbb 20$"

  echo $REPLY

  echo $2

  break

  ;;

 

  ccc)

  echo "ccc 30$"

  echo $REPLY

  echo $3

  break

  ;; 

 

  *)

  echo "other 100$"

  echo $REPLY

  break

  ;;

 

  esac

 

done

blob.png

原创文章,作者:songzizhe,如若转载,请注明出处:http://www.178linux.com/40261

(0)
songzizhesongzizhe
上一篇 2016-09-19 13:49
下一篇 2016-09-19 13:49

相关推荐

  • OSI七层模型

      OSI模型的七层结构 首先,OSI是什么呢?OSI(Open System Interconnection),OSI是一个开放性的通行系统互连参考模型,是一个协议规范。它把网络协议从逻辑上分为了7层。每一层都有相关、相对应的物理设备。OSI七层模型是一种框架性的设计方法 ,建立七层模型的主要目的是为解决异种网络互连时所遇到的兼容性问题,其最主要…

    2017-09-02
  • M20 – 1- 第三周(1):课堂练习与作业

    课堂练习: 1、创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为"Gentoo Distribution" [root@localhost ~]# useradd -G bin,root -s /bin/csh -c&nbsp…

    Linux干货 2016-08-08
  • 啊 逗比呀!

    提示符,nano编辑,rz | sz命令,Sublime

    2017-11-19
  • 中秋干货之系统启动修复

    在使用CentOS系统时,难免会有误操作而导致机器不能正常启动,这里介绍了多种启动失败的原因和修复的方法。 grub损坏类 grub 1stage 被破坏使用dd擦写MBR前446字节,即抹去stage1阶段–[root@_2_ ~]# reboot #重启–启动失败,找不到系统,这时只能借助光盘进入修复模式,重新安装grub&#82…

    Linux干货 2016-09-15
  • 磁盘分区管理

    进行磁盘分区之前首先要了解什么是磁盘分区:         磁盘分区是在磁盘上划分几个逻辑部分,盘片一旦划分成数个分区,不同类的目录与文件可以存储进不同的分区。越多分区,也就有更多不同的地方,可以将文件的性质区分得更细,按照更为细分的性质,存储在不同的地方以管理文件;但太多分区就…

    2017-08-21
  • CentOS系统启动流程、selinux、Systemd剖析

    交互式登录配置文件读取顺序: /etc/profile –> /etc/profile.d/*.sh –> ~/.bash_profile –> ~/.bashrc –> /etc/bashrc 非交互式登录配置文件读取顺序: ~/.bashrc –> /etc/bas…

    Linux干货 2018-03-04