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

相关推荐

  • Shell脚本的编写

    1.什么是Shell脚本 Shell脚本是利用 shell 的功能所写的一个程序 program,这个程序是使用纯文本文件,将一些 shell 的语法与指令(含外部指令)写在里面, 搭配正则表达式、管线命令与数据流重导向等功能,以达到我们所想要的处理目的。 Shell 脚本可以简单的被看成是批处理文件, 也可以被说成是一个程序语言,且这个程序语言由于都是利用…

    Linux干货 2017-04-16
  • 马哥教育网络班21期第6周课程练习

    一、vim编辑器的使用 二、练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@www ~]# cp /etc/rc.d/rc.sysinit /tmp [root@www ~]# l…

    Linux干货 2016-08-15
  • Linux第四周学习博客作业

    对第四周学习的内容进行总结

    Linux干货 2017-12-23
  • http状态码大全

    状态值:100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 状态值:101 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个…

    Linux干货 2016-11-01
  • 正则 grep查找find(xargs)练手

    1、显示当前系统上root、fedora或user1用户的默认shell; ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(); ~]# gre…

    Linux干货 2016-10-24
  • 第一周的学习总结

       本人是Linux 小白,0基础。加入马帮开始Linux之旅。由于完全不懂Linux,所以在学习的过程中,每课都要看上2遍。接下来说说我第一周所学的内容。 首先是了解到了计算机基础知识,计算机的组成部分、CPU架构类型、其他外围设备。 操作系统基础知识进程管理、内存管理、网络管理、驱动管理、安全管理等。 Linux的起源、发行版以及构…

    Linux干货 2016-02-28