在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
在shell脚本中,发现case语句的一个问题。 出现如下情况: 复制代码 代码如下: [root@station1 ~]# cat case.sh #!/bin/bash while : do echo -n "input a letter: " read var case "$var" in [a-z]) echo "Lowercase letter";; [A-Z]) echo "Uppercase letter";; [0-9]) echo "Digit";; *) echo "Punctuation, whitespace, or other";; esac done [root@station1 ~]# bash case.sh input a letter: a Lowercase letter input a letter: A Lowercase letter input a letter: 2 Digit input a letter: 0 Digit input a letter: B Lowercase letter input a letter: y Lowercase letter input a letter: ^C [root@station1 ~]# 可以看到当输入大小写字母都会输出“Lowercase letter” 就当我疑惑不解的时候,奇迹发生了。。。。 复制代码 代码如下: [root@station1 ~]# bash case.sh input a letter: Z Uppercase letter input a letter: 当输入大写Z的时候,终于出现了我们想要的结果:Uppercase letter 再看下面这段代码: 复制代码 代码如下: [root@station1 ~]# cat case.sh #!/bin/bash while : do echo -n "input a letter: " read var case "$var" in [a-c]) echo "Lowercase letter";; [A-Z]) echo "Uppercase letter";; [0-9]) echo "Digit";; *) echo "Punctuation, whitespace, or other";; esac done [root@station1 ~]# bash case.sh input a letter: a Lowercase letter input a letter: b Lowercase letter input a letter: c Lowercase letter input a letter: d Uppercase letter input a letter: e Uppercase letter input a letter: ^C [root@station1 ~]# 可以看出来它的编码方式是:aAbBcCdDeE...yYzZ |
请发表评论