telnet批量测试端口脚本

摘要:
/bin/bash#功能,批量telnet端口,输入参数需要测试的IP:PORT列表文件:telnet_list.txt#使用方法:telnet.shtelnet_list.txt;或者后台执行:shtelnet.shtelnet_list.txt˃tellog.log2˃&1输出2个文件到result目录中:telnet_alive.txt为端口通的;telnet_die.txt为端口不通的情况。mkdir-p$BASEDIR/resultresult_dir=$BASEDIR/result#设置输入的IP和端口文件名telnet_list=$1#如果输入参数为空,默认list文件为当前目录下的telnet_list.txtif[[-z$telnet_list]];thenecho"=˃listfilenameisdefault!"telnet_list=telnet_list.txtfiecho"telnettestfileis:$telnet_list"#重置上次执行的文件结果mv$result_dir/telnet_alive.txt$result_dir/telnet_alive.txt.bak#进行telnet并输出到响应文件中forlinein`cat$BASEDIR/$telnet_list|grep-v^#|grep-v^$`do#获取测试IPip=`echo$line|awk'BEGIN{FS="|"}{print$1}'`#获取测试端口port=`echo$line|awk'BEGIN{FS="|"}{print$2}'`#telnent一次并暂停1秒输出到result/telnet_result.txt文件中,文件数据每一次循环会重置。echo"|telnet$ip$port"|telnet$ip$port˃$result_dir/telnet_result.txt#查找成功响应的数据并输出到到result/telnet_alive.txt文件中。

作者都已经备注的很详细了,不在赘述。

telnet.sh

#!/bin/bash
#功能,批量telnet端口,输入参数需要测试的IP:PORT列表文件:telnet_list.txt(文件名可以自定义,但是只能跟脚本放在同一目录)
#使用方法: telnet.sh telnet_list.txt ;或者后台执行: sh telnet.sh telnet_list.txt >tellog.log 2>&1 &#输出2个文件到result目录中: telnet_alive.txt 为端口通的;telnet_die.txt为端口不通的情况。
#文件内容格式如下,文件中每一行第一个字符#开头的行为注释行,不进行处理:
#127.0.0.1|631
#获取当前目录
BASEDIR=`dirname $0`
BASEDIR=`cd $BASEDIR;pwd`

#设置输出数据目录。
mkdir -p $BASEDIR/result
result_dir=$BASEDIR/result


#设置输入的IP和端口文件名
telnet_list=$1#如果输入参数为空,默认list文件为当前目录下的telnet_list.txt
if [[ -z $telnet_list ]];
then
    echo "=>list file name is default!"telnet_list=telnet_list.txt
fi

echo "telnet test file is :  $telnet_list"
#重置上次执行的文件结果
mv $result_dir/telnet_alive.txt $result_dir/telnet_alive.txt.bak

#进行telnet并输出到响应文件中
for line in `cat $BASEDIR/$telnet_list |grep -v ^# |grep -v ^$ `
do#获取测试IP
        ip=`echo $line | awk 'BEGIN{FS="|"} {print $1}'`
        #获取测试端口
        port=`echo $line | awk 'BEGIN{FS="|"} {print $2}'`
        #telnent一次并暂停1秒输出到result/telnet_result.txt 文件中,文件数据每一次循环会重置。
        echo "(sleep 1;) | telnet $ip $port"(sleep 1;) | telnet $ip $port > $result_dir/telnet_result.txt
        #查找成功响应的数据并输出到到result/telnet_alive.txt 文件中。
        successIp=`cat $result_dir/telnet_result.txt | grep -B 1 ] | grep [0-9] | awk '{print $3}' | cut -d '.' -f 1,2,3,4`
        if [ -n "$successIp" ]; then
                echo "$successIp|$port" >> $result_dir/telnet_alive.txt
        fi
done#查找失败数据并输出到result/telnet_die.txt文件内。
cat $BASEDIR/$telnet_list $result_dir/telnet_alive.txt | sort | uniq -u |grep -v ^# > $result_dir/telnet_die.txt

echo ">----------------------------------------------------------------------------------------------------"
echo "telnet is run over !"
echo "telnet ok file is : result/telnet_alive.txt  "
echo "telnet failes file is : result/telnet_die.txt "
echo ">----------------------------------------------------------------------------------------------------"

telnet_list.txt

#hosts

10.186.118.24|7009
10.186.118.25|7009
10.186.118.26|7009
10.186.118.27|7009
10.186.118.28|7009
10.186.118.29|7009
10.186.118.30|7009
10.186.118.31|7009
10.186.118.32|7009
10.186.118.33|7009
10.186.118.34|7009
10.186.118.35|7009
10.186.118.36|7009
10.186.118.37|7009
10.186.118.38|7009
10.186.118.39|7009

原文地址:https://blog.csdn.net/weixin_42488171/article/details/86681096

免责声明:文章转载自《telnet批量测试端口脚本》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇静态成员JS兼容性问题(FF与IE)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

shell脚本-批量添加用户

批量添加用户,要求如下 脚本一:不是很严格但是很简洁的脚本 #!/bin/bash #该脚本用来实现批量添加用户。##作者阿鑫#日期2019/5/27#版本v1 #提示用户脚本使用方法 [ $# -eq 0 ] && echo "Usage useradd.sh number" &&exit #判断是否存在/data/u...

Docker 创建 mongo 容器

一、1、直接获取 docker 认证 mongo 镜像: docker pull mongo 2、创建运行 mongo 容器: docker run -d -it -p 127:27017 --name mongo3 -m 512M -v /data/docker-file/mongo3/db3:/data/db docker.io/mongo -p  ...

【转】70个经典的 Shell 脚本面试问题

我们为你的面试准备选择了 70 个你可能遇到的 shell 脚面问题及解答。了解脚本或至少知道基础知识对系统管理员来说至关重要,它也有助于你在工作环境中自动完成很多任务。在过去的几年里,我们注意到所有的 linux 工作职位都要求脚本技能。 1) 如何向脚本传递参数 ? ./script argument 例子 : 显示文件名称脚本 ./show.sh...

discuz 用户整合 账号整合 ucenter php网站整合discuz用户 拂晓风起

1、登录后台管理。(在论坛中,用创建论坛的admin账号登陆,然后点“管理中心”) 2、添加新应用,填写资料。其实就是“名称”和“密钥”重要一些而已。例如我这里添加的“香芋网” 3、复制生成的配置代码,贴到constants.php中(CodeIgniter),或者使用前引入一个配置,在该配置中贴这些配置代码。 然后,就是使用了:参考deve...

statsvn,代码统计

#! /bin/bash # 计算有效变更代码量的脚本 #./svnCount -thttps://192.168.1.1/xxx -s1000 -e2000 -uxxx -pxxx version() { OS=`uname -o` echo "Source_counter ($OS) 0.0.1" echo " tony bai (http...

(四)AppScan用外部设备(ios,安卓)录制app脚本进行安全测试

一、打开AppScan,选择外部设备/客户机,点击下 二、记录代理设置,可以手动输入需要的端口号,也可以自动选择。 手机配置代理: 1.连接wifi 2.找到该wifi--高级设置--配置代理: 三、SSL证书,点击下一步 四、安装好证书以后,点击登陆管理 在手机上打开app,打开登录界面后,点击记录按钮 可以看到设备已连接,执行完登录按钮后,...