下面的脚本在 CentOS 上运行良好,但在 RHEL5 上运行不佳:
#!/bin/bash
read -p "enter your value:" ip
if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]
then
echo "valid"
else
echo "invalid"
fi
运行脚本并只需传递 192.16666 作为输入,它就会显示有效。但如果你在CentOS中做同样的事情,就会说无效。
请让我知道出了什么问题。
谢谢
最佳答案
=~
匹配为 introduced in Bash 3.0-alpha 。 =~
semantics changed in 3.2 ,但似乎只是强制对右侧引用的字符串进行文本匹配,这与本例无关。版本比这个旧吗?
关于linux - 脚本在 CentOS 上运行良好,但在 RHEL5 上运行不佳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24678052/