本文我们在来一个case语句的练习,在命令终端,让用户输入一些字符,然后判断输入的是字母还是数字,还是其他。
1.相关shell脚本如下
#! /bin/bash
echo "Please input some charactor: \C"
read value
case $value in
[a-z])
echo "You had input $value a to z" ;;
[A-Z])
echo "You had inut $value A to Z" ;;
[0-9])
echo "You had input $value 0 to 9" ;;
?)
echo "You had input $value is not a-z A-Z 0-9" ;;
* )
echo "Default value" ;;
esac
上面的?表示匹配一次,而*表示可以匹配多个结果。[a-z]表示正则表达式,是表示小写字母a-z全部小写字母。后面两个不解释,估计你也能猜到,什么意思。运行结果