我正在尝试根据正则表达式验证用户输入。
vari=A
if [ $vari =~ [A-Z] ] ;
then
echo "hurray"
fi
我得到的输出是 swf.sh[3]: =~: 未知的测试运算符。
您能让我知道我可以使用的测试操作员吗?
它没有内置到 Bourne shell 中,您需要使用 grep:
if echo "$vari" | grep -q '[A-Z]'; then
echo hurray
fi
如果你想匹配整个字符串,请记住使用正则表达式锚点,^
and $
。请注意,-q
flag 使 grep 安静,因此它的唯一输出是返回值,用于匹配/不匹配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)