ok,以后最好是每天一个shell小脚本吧,这样以后工作时还可以直接套用,嗯,比较不错,顺便还可以带给刚入门shell的朋友一些帮助,好了,废话不多说,下面是我两种判断的实现方式:

  1、通过grep去筛选非数字,判断其输出状态,以下两种方式:

#!/bin/bash
read -p "please input a num: " num if echo $num | grep -q '[^0-9]' then echo "this is not a num,please input num" exit 1 fi
#!/bin/bash
read -p "please input a num: "  num
echo $num | grep -q '[^0-9]'
n1=$?
if [ $n1 -eq 0 ]
then
        echo "this is not a num,please input num"
        exit 1
fi

  2、通过用sed 's///g'替换的方式,把数字替换为null,然后去判断输出是否为null,如果不为null,则说明有字符啦

#!/bin/bash
read -p "please input a num: "  num
n1=`echo $num|sed 's/[0-9]//g'`
if [ ! -z $n1 ]
then
        echo "this is not a num,please input num"
        exit 1
fi

 

  

相关文章:

  • 2021-12-21
  • 2021-10-26
  • 2021-07-29
  • 2022-01-12
  • 2022-12-23
  • 2022-12-23
  • 2021-10-12
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-11
  • 2021-11-06
  • 2022-12-23
  • 2021-05-23
  • 2022-12-23
相关资源
相似解决方案