有没有办法将其反转,以便先检查它是否无效?
if expr "$string" : '-\?[0-9]\+$' >/dev/null
then
echo "String is a valid integer."
else
echo "String is not a valid integer."
fi
答案 0 :(得分:6)
是的,我同意@nobody和@BenJackson,你只需要添加'logical NOT'运算符,即
if ! expr "$string" : '-\?[0-9]\+$' >/dev/null ; then
#--^ right there ;-)
echo "String is not a valid integer."
else
echo "String is a valid integer."
fi
我希望这会有所帮助。
P.S。因为您似乎是新用户,如果您得到的答案可以帮助您,请记住将其标记为已接受,并且/或者给它一个+(或 - )作为有用的答案。