telnet批量检测IP端口的网络连通性

检测单个ip端口的shell脚本:telnet_one.sh

ip=$1
port=$2
timeoutSec=5
echo -e '\x1dclose\x0d' | timeout --signal=9 $timeoutSec telnet $ip $port
echo "$ip:$port,$?" >> result.txt

批量检测ip端口的shell脚本:telnet_all.sh

ipfile=$1
curpath=$(readlink -f "$(dirname "$0")")
lines=($(cat $curpath'/'$ipfile))
len=${#lines[@]}
for ((i=0; i<$len; i++))
do
  line=${lines[$i]}
   array=(${line//:/ })
   ip=${array[0]}
   port=${array[1]}
   sh telnet_one.sh $ip $port
done

检测命令

sh telnet_all.sh iplist.txt

iplist.txt的内容格式

196.168.0.0:8080
196.168.0.1:8088
196.168.0.2:8088

检测结果result.txt的内容格式

196.168.0.0:8080,1
196.168.0.1:8088,137
196.168.0.2:8088,0

0代表telnet都是通的,1、137及其他都代表不通

以上所有shell脚本及txt文件都放在同一个目录下即可


版权声明:本文为xiaoping_1988原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。