堕落不振功业废,勤耕不辍日月新

case条件判断语句

Linux/Unix hailen 566℃

件判断: 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.

 

 

转载请注明:linux运维部落 » case条件判断语句

转载请注明:我是IT » case条件判断语句

喜欢 (0)or分享 (0)