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
下一篇 2016-09-19

相关推荐

  • 马哥教育网络班22期第一周课程练习3-未闻花名

    man命令后面可以加一个数字参数,表示具体的范围定位: 数字"1"表示用户命令 数字"2"表示系统调用 数字"3"表示C语言库函数 数字"4"表示设备或特殊文件 数字"5"表示文件格式和规则 数字"6"表示游戏及其他 数字"7&q…

    Linux干货 2016-08-15
  • 马哥教育-第二周作业

    问题一:文件管理类命令 常规命令:mkdir、rmdir、stat、touch、copy、mv、rm (1).mkdir  创建目录: 注意:路径基名方为命令的作用对象;基名之前的路径必须得存在; -p:自动按需创建父目录; -v:显示创建过程; -m 参数:直接给定所需权限; 例子:问题:创建 /tmp/x ; /tmp/x/y1 ; /tmp/…

    Linux干货 2016-12-11
  • DNS基础知识

    一、DNS介绍:   1、DNS: Domain  Name Service,域名解析服务;      部署方式为分布式部署,如图所示:        2、查询类型:     递归查询:仅发出一次请求,要求对方回复最终结果&nbs…

    Linux干货 2015-05-18
  • 第三周作业

    列出当前系统上所有已经登录的用户名,同一个用户登录多次,则只显示一次 [root@app02 ~]# who |grep -o -E '^\<[a-zA-Z]+\>'|sort -u root XIAOXIN 2. 取出最后登录到当前系统的用户相关信息 [r…

    Linux干货 2016-08-29
  • 文件管理类命令详解

    文件管理类命令详解 文件查看 cat 功能描述:连接文件并打印到标准输出上 命令格式:cat [OPTION]… [FILE]… OPTION: -b 对所有非空白行编号 -n 给所有输出行编号 -s 将连续多行空白行显示为一行空白行 -E 在每一行行尾显示$ FILE:可显示多个文件,文件之间以空格分隔 举例 将file1、file…

    Linux干货 2017-07-09
  • 马哥教育网络班21期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; [root@centos ~]# mke2fs -t ext4 -b 2048 -m 2&…

    Linux干货 2016-08-01