欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

每天一个shell小知识(case)

程序员文章站 2022-04-27 19:44:11
...

Case语句

case:

Case语句主要适用于:某个变量存在多种取值,需要对其中的每一种取值分别执行不同的命令序列。这种情况和多分支if语句非常相似。只不过if要判断多个不同的条件而case语句只判断一个变量的不同取值。

结构

case  变量值  in
模式1)
	命令序列1
	;;
模式2)
	命令序列2
	;;
。。。。。。。。。。。。。
*)
默认命令序列
esac
case行尾必须为单词“in”,每一模式必须以右括号“)”结束。
双分号“;;”表示命令序列的结束。
模式字符串中,可以用方括号表示一个连续的范围,如:“[0-9]”;还可以用竖杠符号“|”表示或,如“A|B”.
最后的“*)”表示默认模式, 其中的*相当于通配符

例1

检查用户输入字符类型:提示用户输入一个字符,通过case语句判断该字符为字母,数字或者是其他字符,并给出相应的提示。

#vi case1.sh
#!/bin/bash
read -p "请输入一个字符,并按enter确认:"  KEY
case "$KEY" in 
        [a-z]|[A-Z])
                echo "您输入的字符为字母"
                ;;
        [0-9])
                echo "您输入的字符为数字"
                ;;
		*)
        echo "您输入的是空格、功能键或其他控制字符"
esac
相关标签: shell shell