telnet批量检测端口状态(linux)
批量检测端口通信:
准备文件树状图
telnet.sh 脚本内容如下:
文件说明
telnet_alive.txt : 活动的端口
telnet_die.txt : 离线的端口
telnet_result.txt : 活动端口返回信息
telnet_info.txt : 要查询的iP端口地址
telnet.sh : telnet 查询IP的脚本
telnet.sh 的详细信息:
#!/bin/bash BASEDIR=`dirname $0`
BASEDIR=`cd $BASEDIR;pwd` result_dir=$BASEDIR/result telnet_info=telnet_info.txt for line in `cat $BASEDIR/$telnet_info`
do
ip=`echo $line | awk 'BEGIN{FS="|"} {print $1}'`
port=`echo $line | awk 'BEGIN{FS="|"} {print $2}'`
echo "(sleep 1;) | telnet $ip $port"
(sleep 1;) | telnet $ip $port > $result_dir/telnet_result.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 cat $BASEDIR/$telnet_info $result_dir/telnet_alive.txt | sort | uniq -u > $result_dir/telnet_die.txt
本程序的GITHUB地址:https://github.com/760730895/-telnet-
备注:
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
telnet批量检测端口状态(linux)的更多相关文章
- Zabbix如何实现批量监控端口状态
引言 ------------------------------------------------------------------------------------------------- ...
- shell 脚本检测端口状态
方法一: # cat check_port.sh #!/bin/bash cat ip.txt|while read line do /usr/bin/nc -w 1 -z $line > /d ...
- 检测端口状态的python脚本
#!/usr/bin/env python import os,subprocess,socket,time,sys from urllib import urlencode from socket ...
- Linux利用nc命令脚本批量检测服务器指定端口是否开放
一.nc命令检测端口的用法 # nc -v -w 10 %IP% -z %PORT% -v 显示指令执行过程. -w <超时秒数> 设置等待连线的时间. -u 表示使用UDP协议 -z 使 ...
- nc检测端口是否正常服务的一个命令
最近碰到一个项目,前端用apache htttpd进行发布(80端口),通过双机负载均衡转发到后端的两个tomcat进行处理(8081和8082端口),现在需要随时监控这三个端口的情况,一旦down掉 ...
- C#实时检测端口占用情况
在TCP/IP协议中,服务端需要去监听客户端的端口,开始监听,我们需要检测使用的端口是否被占用,获取系统当前使用的所有端口号,用此端口进行匹配即可. 代码如下 internal static Bool ...
- Python批量检测服务器端口可用性与Socket函数使用
socket函数 简述 socket又称套间字或者插口,是网络通信中必不可少的工具.有道是:"无socket,不网络".由于socket最早在BSD Unix上使用,而Unix/L ...
- Telnet命令检测远程主机上的端口是否开启
ping命令不能检测端口,只能检测你和相应IP是否能连通. 本地虚拟机里安装了一个Ubuntu,使用Putty连接22端口操作时提示失败,于是查看对应端口是否开启. Windows下要检测远程主机上的 ...
- 在Linux下用netstat查看网络状态、端口状态
在Linux下用netstat查看网络状态.端口状态 在linux一般使用netstat 来查看系统端口使用情况步. netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表.实 ...
随机推荐
- Good number(3进制)
https://codeforces.com/problemset/problem/1249/C2 C2. Good Numbers (hard version) time limit per tes ...
- ecshop 2.7 PC 微信扫描支付配置教程
在ecshop支付过程中,有些是没有微信支付的,需要自己添加微信支付的模块,那么怎么添加呢,添加过程需要调试,本人花了很长时间才调试成功的pc微信扫描支付, 1,数据库添加微信支付方模块 2,后台设置 ...
- Django基础之简介(二)
三板斧 from django.shortcuts import render,HttpResponse, redirect HttpResponse # 返回字符串 urls: urlpatte ...
- postgresql Streaming Replication监控与注意事项
一监控Streaming Replication集群 1 pg_stat_replication视图(主库端执行) pid Wal sender process的进程ID usesysid 执行流复制 ...
- nginx location配置讲解
location语法:表示uri方式定位 基础语法有三种: location = pattern {} 精准匹配 location pattern {} 一般匹配 location ~ pattern ...
- ideamaven版的MBG逆向工程
一.简介 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及bean类. 支持基本的增删改查,以及QBC风格的条件查询. 但是表连接.存储 ...
- 2018-10-25-weekly
Algorithm 94. 二叉树的中序遍历 What 给定一个二叉树,返回它的中序遍历. How 二叉树的中序遍历顺序为左-根-右,可以用递归来解,对左子结点调用递归函数,根节点访问值,右子节点再调 ...
- Codeforces 512B: Fox And Jumping
题目链接 题意说的是,有n种卡片,使用第i种卡片可以使当前自己在数轴上的位置移动 l[i],要获得使用第i种卡片的代价是 c[i],求能使自己移动到数轴上任意位置的最小代价,如果不可能则输出-1 当前 ...
- Task3.特征选择
参考:https://www.jianshu.com/p/f3b92124cd2b 互信息 衡量两个随机变量之间的相关性,两个随机变量相关信息的多少. 随机变量就是随机试验结果的量的表示,可以理解为按 ...
- 吸$DN
旧博客:https://blog.csdn.net/gmh77 从几年前开始用CSDN,见证了CSDN是如何一步步走向辣鸡的 广告?ABP 登录看文章?雨我无瓜账号常年不退 分类要慢慢点也可以接受 前 ...