case条件判断语句

件判断: case语句

    在shell编程中,对于多分支判断,用if 虽然也可以实现,但有些时候,写起来很麻烦,也不容易代码理解。这个时候,可以考虑case。

case 变量引用 in

PAT1)

分支1

;;

PAT2)

分支2

;;

*)

默认分支

;;

esac


case语句结构特点如下:

case行尾必须为单词“in”,每一个模式必须以右括号“)”结束。

双分号“;;”表示命令序列结束。

匹配模式中可是使用方括号表示一个连续的范围,如[0-9];使用竖杠符号“|”表示或。

“|”分割多个模式,相当于or

最后的“*)”表示默认模式,当使用前面的各种模式均无法匹配该变量时,将执行“*)”后的命令序列。

 

脚本代码

[root@localhost bin]# cat chatype.sh 
#!/bin/bash
# Description: Determine the type of input character
 
read -p "Please enter a character: " char
case $char in
[A-Z])
   echo "Input is capital letters."
   ;;
[a-z])
   echo "Input is lowercase letter."
   ;;
[0-9])
   echo "Input is digital."
   ;;
*)
   echo "Input is other char."
   ;;
esac

执行结果

[root@localhost bin]# chatype.sh 
Please enter a character: a
Input is lowercase letter.
[root@localhost bin]# chatype.sh 
Please enter a character: N
Input is capital letters.
[root@localhost bin]# chatype.sh 
Please enter a character: 3
Input is digital.
[root@localhost bin]# chatype.sh 
Please enter a character: %
Input is other char.
[root@localhost bin]# chatype.sh 
Please enter a character: !
Input is other char.


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

(0)
cyh5217cyh5217
上一篇 2016-08-16
下一篇 2016-08-16

相关推荐

  • LVS四种模式

    马哥教育网络班18期 第17周课程练习1 LVS工作模式图解 LVS-NAT模式 TCP请求报文的目的IP地址被Director调度服务器重写为RIP后发送给RS,RS的默认网关配置为Director的DIP,Director接受到RS响应报文后修改源IP地址发送给用户IP RS网关指向DIP,RIP,DIP和RIP必须在同一网段内 Director转发请求…

    Linux干货 2016-06-23
  • ☞磁盘管理{分区表备份与恢复;修复fstab记录错误;制作swap分区;磁盘配额演示;}

    磁盘管理{ 分区表备份与恢复;错误fstab修复;swap分区;磁盘配额;}

    Linux干货 2016-09-04
  • 优云软件:双态运维下,老司机是怎么玩CMDB的?

    行业内有个科技公司,CMDB前后建设12年,重构了N次,一言不合就重构,我深深的被这种屡拆屡战,初心不改精神所折服。我真心想问下做CMDB的兄弟,各位是怎么熬过来的?请不要回避,其实我们都曾被这样虐过! 近几年我司承建国内很多传统行业的CMDB项目,坦白的说,随着互联网+热潮的冲击,因很多传统企业也慢慢的在转变业务,把很多传统型的业务互联网化,或者开辟新型业…

    2016-08-05
  • grep

    1. 文本处理工具的使用:   cat 连接文件并打印到标准输出设备,但是文件较大时,翻屏太快,与more或者less连用 命令反着输入(tac)将会反向输出文本文件 用法: cat 选项 参数   选项: -A 显示不可打印字符 -b 对行进行编号,空白行不编号 -s 压缩空白行 -n 对行进行编号,包括空白航  参数: &n…

    Linux干货 2016-08-08
  • Linux系统shell脚本

                                          &n…

    系统运维 2016-09-01
  • 第二周作业

    一、文件管理类命令     1、cp:复制文件        单文件复制cp source dest,如果dest存在且dest不是目录,则覆盖目标文件。如果dest不存在,则自行创建dest文件;如果source是目录,则cp命令不会执行。如果source是链接文件,则复制的是链接文件指向的文件内…

    Linux干货 2016-12-11