#!/bin/bash
read -p "Enter value:" val
echo "$val"|grep "^[0-9]*$"
val="$?"
if [[ $val == 0 ]]
then
echo "Integer"
exit
fi
echo $val|grep "^[a-zA-Z]*$"
val="$?"
if [[ $val == 0 ]]
then
echo "String"
exit
fi
echo $val|grep "^[0-9]*.[0-9]*$"
val="$?"
if [[ $val == 0 ]]
then
echo "Float"
exit
fi
Run Code Online (Sandbox Code Playgroud)
如果我输入像“ape”这样的字符串,它会显示“grep invalid range”,然后打印浮点数。我哪里做错了?