linux下批量并行telnet对端端口的实现方法

   以下是以telnet对端22端口为例

  station91:~/shell/telnet_port # pwd

  /root/shell/telnet_port

  station91:~/shell/telnet_port # cat telnet_port.sh

  #!/bin/bash

  rm telnet_result.txt >/dev/null 2>&1

  PORT_22=22

  for i in $(cat ip.list)

  do (telnet $i $PORT_22<>telnet_result.txt &) >/dev/null 2>&1

  #加&让其并行执行,>>telnet_result.txt记录telnet过程中的日志

  quit

  EOF

  done

  cat telnet_result.txt | grep -B 1 ] | grep [1-9] | awk '{print $3}' | cut -d '.' -f 1,2,3,4 > telnet_alive.txt

  cat ip.list telnet_alive.txt | sort | uniq -u > telnet_die.txt

  station91:~/shell/telnet_port # for i in {88..93};do echo "192.168.14.$i">>ip.list;done #使用for循环得到需要telnet主机的ip

  station91:~/shell/telnet_port # cat ip.list

  192.168.14.88

  192.168.14.89

  192.168.14.90

  192.168.14.91

  192.168.14.92

  192.168.14.93

  station91:~/shell/telnet_port # ls

  ip.list telnet_port.sh

  station91:~/shell/telnet_port # ./telnet_port.sh &

  [1] 16848

  station91:~/shell/telnet_port # ls

  ip.list telnet_alive.txt telnet_die.txt telnet_port.sh telnet_result.txt

  [1]+ Done ./telnet_port.sh

  station91:~/shell/telnet_port # cat telnet_alive.txt //从本机telnet对端22端口能telnet通的只有192.168.14.91

  192.168.14.91

  station91:~/shell/telnet_port # cat telnet_die.txt

  192.168.14.88

  192.168.14.89

  192.168.14.90

  192.168.14.92

  192.168.14.93

  station91:~/shell/telnet_port # cat telnet_result.txt //记录的日志格式

  Trying 192.168.14.91...

  Connected to 192.168.14.91.

  Escape character is '^]'.

  Trying 192.168.14.88...

  Trying 192.168.14.89...

  Trying 192.168.14.90...

  Trying 192.168.14.92...

  Trying 192.168.14.93...

时间: 2024-08-20 15:24:04

linux下批量并行telnet对端端口的实现方法的相关文章

脚本-如何在Linux下批量改C语言的作业?

问题描述 如何在Linux下批量改C语言的作业? 最近接到导师给的一个任务帮本科生改C语言作业.大概的界面是这样的需要测试每种输入: LuYang:CISB110-Programming Practice 1-41826 luyang$ ./mainChoose the type of speed conversion:1. knots to km/h2. km/h to knotsEnter your choice (1 or 2): 0Invalid optionLuYang:CISB110

Linux 下 Python 实现按任意键退出的实现方法_python

某天在群内有同学问到,在python下我用input或者raw_input都得输入完后回车才能获取到输入的值,那如何实现任意键退出暂停等功能呢,我当时也没有多想,因为接触python时间也不算长,主要还是Linux下的. 当然,Windows系统下会稍微简单一些,Windows系统下如果你安装了python的环境,默认自带的一个模块叫做msvcrt,import msvcrt,然后调用msvcrt.getch()即可.接下来即Linux下实现python版本的按任意键退出. 初学Python时在

linux驱动-linux下写驱动控制gpio时的两种方法区别

问题描述 linux下写驱动控制gpio时的两种方法区别 linux下写驱动控制gpio时,见过两种方法: 用request_mem_region函数和ioremap等得到控制寄存器的地址,然后用iowrite32函数控制该gpio 用gpio_request 和 gpio_set_value函数来控制gpio引脚 请问:这两种方法有什么区别,分别适用什么场合? 解决方案 http://blog.csdn.net/mirkerson/article/details/8464290http://b

Linux下的段错误产生的原因及调试方法

Linux下的段错误产生的原因及调试方法     简而言之,产生段错误就是访问了错误的内存段,一般是你没有权限,或者根本就不存在对应的物理内存,尤其常见的是访问0地址. 一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他是一个48位的寄存器,其中的32位是保存由它指向的gdt表,后13位保存相应于gdt的下标,最后3位包括了程序是否在内存中以及程序的在cpu中的运行级别,指向的gdt是由以64位为一个单位的表,在这张表中就保存着程序运行的代码段以

linux下批量替换文件内容的方法

  对于单个文件,使用sed命令很容易做到.如果需要替换某个指定文件夹下所有文件,借助grep和sed组合成一条命令也可以轻松搞定. grep命令可以查找单个文件或文件夹下文件中的内容,使用参数"r"或"-R"可以递归查找指定文件夹下的所有文件;参数"l"可以让grep输出包含指定字符串的文件名,首次匹配成功后立刻停止对同文件的查询.如果不使用"l",grep查询单个文件时输出文件中所有包含指定字符串的行,对文件夹查询时则按照

linux下批量替换文件中的内容

  grep命令可以查找单个文件或文件夹下文件中的内容,使用参数"r"或"-R"可以递归查找指定文件夹下的所有文件;参数"l"可以让grep输出包含指定字符串的文件名,首次匹配成功后立刻停止对同文件的查询.如果不使用"l",grep查询单个文件时输出文件中所有包含指定字符串的行,对文件夹查询时则按照"文件名:包含字符串行"的方式输出. 有了上面提到的知识,执行批量替换的命令可以写为: grep "

Linux下批量杀死进程(根据关键字杀死进程)

进程在计算机中是一个程序执行过程的标志,当程序执行完时,相应的进程也该终止.但是实际情况中很多进程没有在程序执行终止时死掉,于是变成了僵尸进程,少量的僵尸进程并不会影响服务器的性能,但是任何服务器在进程很多的时候都无法提供很好的性能. 有时候因为一些特殊情况,需要把 linux 下符合某一项条件的所有进程 kill 掉,又不能用 killall 直接杀掉某一进程名称包含的所有运行中进程(我们可能只需要杀掉其中的某一类或运行指定参数命令的进程),这个时候我们需要运用 ps, grep, cut 和

Linux下批量修改文件名(rename)

原文地址: http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修改文件名, 不过rename实在太方便了 比如把所有的表为cdb1_* 修改为cdb_*的在本目录下只需要# rename 'cdb1' 'cdb' * 以前都是写个for循环来做...想想多傻啊, 呵呵 rename还有更多的功能, 建议man rename下 From:http://www.ha

Linux下U盘病毒删除不了的解决方法

  在Linux下使用U盘时,每次都看到一个什么auto之类的文件,怀疑是一个病毒. 但输入ls -l命令发现,属性竟然全不是? 结果是删不掉了. 经过多方查询得知原因是linux不能处理以"."结尾的文件.所以在这个地方不能删除. 不过解决的办法是有的. 方法如下: 如果你是系统自动挂载U盘,请先umount 然后,输入如下: sudo mount -t msDos /dev/sd* /media/disk 这里和默认不同的是 -t参数从vfat 变成msdos.因为vfat是针对f