今天写了case的用法,写了之后,经过反复的测试,发现了一些以前没注意到的问题,写出来,与大家分享。
- #!bin/bash
- #auther yangka
- #date 2012-08-02
- #place huateng
- #5秒等待,输入一个数字
- read -t 5 -p "input a number" Na;
- #case判断
- case ${Na} in
- 0)
- echo "the number is 0 .";
- ;;
- #如果是1 或 10
- [1-10])
- echo "the inputed is 1 or 10,is ${Na} .";
- ;;
- #如果在从2~8的数字
- [2-8])
- echo "the inputed is between 2 and 8,is ${Na} .";
- ;;
- #如果是任意两位、两位以上的数字,必须采用下面写法
- [1-9][0-9]*[0-9])
- #[1-9][0-9]*)--error can not discriminate the var like 3434dafa
- #[1-9][0-9]*$)--error it is not used by ^ $ ? +
- echo "the inputed is a number,and is ${Na} .";
- ;;
- *)
- echo "the inputed is error .";
- ;;
- esac
- #严格遵照case的结构和格式。
- #通过case循环、主机密钥,制作跳板机脚本,同理也可以写本地的自动化脚本,如开启某些服务等等。修改方法:将判断的改掉,同时将echo语句换成执行的脚本即可。
阅读(1019) | 评论(0) | 转发(0) |