shell高级技巧-验证输入信息是否合法

这里给出的例子是验证用户输入的信息是否都是数字和字母。需要说明的是,之所以将其收集到该系列中,主要是因为它实现的方式比较巧妙。

      [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.
      ```
发布了352 篇原创文章 · 获赞 52 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/xie_qi_chao/article/details/105037470