这里给出的例子是验证用户输入的信息是否都是数字和字母。需要说明的是,之所以将其收集到该系列中,主要是因为它实现的方式比较巧妙。
[root@xieqichao ~]# cat > test15.sh
#!/bin/sh
echo -n "Enter your input: "
read input
#1. 事实上,这里的巧妙之处就是先用sed替换了非法部分,之后再将替换后的结果与原字符串比较。这种写法也比较容易扩展。
parsed_input=`echo $input | sed 's/[^[:alnum:]]//g'`
if [ "$parsed_input" != "$input" ]; then
echo "Your input must consist of only letters and numbers."
else
echo "Input is OK."
fi
CTRL+D
[root@xieqichao ~]# ./test15.sh
Enter your input: hello123
Input is OK.
[root@xieqichao ~]# ./test15.sh
Enter your input: hello world
Your input must consist of only letters and numbers.
```