2
我想测试至极遥远的端口是否开放,以了解是否必须连接telnet VNC Teamviewer或其他。netcat命令的结果不符合字符串
我将有大约10个端口来测试,我正在为它做一个脚本。 在这一点上我来到这个代码:
function testPort(){
res=`nc -v $1 $2 < /dev/null`
echo $res
if [[ "$res" == *refused* ]]
then
echo "refused"
return 0
else
echo "accepted"
return 1
fi
}
if test -z "$1"
then
echo "What's the adress?"
read IP
else
IP="$1"
fi
testPort $IP 80
的echo $res
的结果是这样的:
nc: connect to 192.168.0.110 port 80 (tcp) failed: Connection refused
RFB 003.889 Connection to 192.168.0.110 5900 port [tcp/vnc-server] succeeded!
但任何情况下,我得到了“接受”显示。我无法弄清楚为什么。有人能解释我的错误在哪里吗?
工程就像一个魅力。没有想到它,因为我对管道和重定向不太放心。谢谢。 –