shell case语句 判断一个字符是字母还是数字
2017-10-24 21:35
253 查看
有时候我们进行数字运算的时候,输入的是字母,这时候会使得脚本崩溃。在运算之前判断输入是不是数字就很重要了。
使用case语句来判断输入的一个字符是不是数字:
这里给个例子:输入两个数,先计算输入的两个字符是不是数字,如果不是就输出错误信息,如果是数字就计算两个数字的和。
使用case语句来判断输入的一个字符是不是数字:
lan@lan_ubuntu:~/桌面/program/课本$ cat isCharOrNum.sh #!/bin/bash read -p "输入一个字符:" input case "$input" in [a-z]|[A-Z]) echo "输入的是字母" ;; [1-9]) echo "输入是数字" ;; *) echo "是其他字符" ;; esac
这里给个例子:输入两个数,先计算输入的两个字符是不是数字,如果不是就输出错误信息,如果是数字就计算两个数字的和。
lan@lan_ubuntu:~/桌面/program/课本$ cat isCharOrNum.sh #!/bin/bash #判断一个字符是不是数字 isNum() { case "$1" in #这里的$1: 表示的是函数的后面的第一个参数 [a-z]|[A-Z]) # echo "输入$1的是字母" return -1; ;; [1-9]) # echo "输入$1是数字" return 1; ;; *) # echo "输入$1是其他字符" return 0; ;; esac } #程序从这开始 read -p "输入a:" a read -p "输入b:" b isNum $a flag1=$? isNum $b flag2=$? #echo "flag1=$flag1" #echo "flag2=$flag2" if [ $flag1 -eq 1 ]&&[ $flag2 -eq 1 ] then result=$(expr $a + $b ) echo "a+b=$result" else echo "输入非数字,无法计算" fi测试:
lan@lan_ubuntu:~/桌面/program/课本$ ./isCharOrNum.sh 输入a:1 输入b:2 a+b=3 lan@lan_ubuntu:~/桌面/program/课本$ ./isCharOrNum.sh 输入a:a 输入b:1 输入非数字,无法计算
相关文章推荐
- shell中用case语句判断输入的一个键是大写字母、小写字母还是数字
- C语言 判断一个字符是字母还是数字
- 从键盘输入一个字符,判断其是字母字符,还是数字字符,还是其他字符
- 判断一个字符是否是数字、还是大小写字母
- java小练习:输入一个字符,判断该字符是数字?英文字母?还是其他字符
- SQL编程:判断一个字符是数字字符、字母字符还是其他字符
- 【学习笔记】判断输入的一个字符 是字母 还是数字 或者是空格
- 笔试题——编写java程序:输入一个字符串,判断有几个英文字母,有几个数字,有几个其它的字符
- 5.8.从键盘任意输入一个字符,编程判断该字符是数字字符、大写字母、小写字母、空格还是其他字符。
- JS判断输入字符串长度实例代码(汉字算两个字符,字母数字算一个)
- 如何编写C语言程序判断一个字符是否是字母或数字
- 怎么判断字符串中是否包含一组字符的任意一个字符及判断字符串是否只含字母和数字
- 判断字符的类别:数字、字母、汉字、非中文宽字符还是标点符号
- JS判断输入字符串长度(汉字算两个字符,字母数字算一个)
- 在Python中判断字符为数字还是字母
- js判断输入字符串长度(汉字算两个字符,字母数字算一个)
- JS判断一个字符是汉字还是字母
- 输入一个字符判断该字符为数字,大写字母,小写字母,还是其他字符
- js判断输入字符串长度(汉字算两个字符,字母数字算一个)
- js判断输入字符串长度(汉字算两个字符,字母数字算一个)