批量telnet


批量telnet IP port

  • url文件樣例:
weblogic@pbxs-app3:~/shelltest/batchTelnet2> cat ipFile.txt 
http://10.133.186.30:7070
http://10.133.240.175:80
http://10.133.240.239:9300
http://10.133.240.239:9000
  • 正則后的IP port
weblogic@pbxs-app3:~/shelltest/batchTelnet2> cat ipList.txt
10.133.186.30 7070
10.133.240.175 80
10.133.240.239 9300
10.133.240.239 9000
  • 批量telnet腳本
 1 #!/bin/bash
 2 # 定義telnet函數
 3 telnetFun(){
 4  sleep 0 | telnet $1 $2 2>log2 1>log1
 5 }
 6 
 7 # 備份文件
 8 num=0
 9 mv log log`date +"%Y%m%d%H%M%S"` 2>>error
10 mv successIP.txt successIP.txt`date +"%Y%m%d%H%M%S"` 2>>error
11 mv failureIP.txt failureIP.txt`date +"%Y%m%d%H%M%S"` 2>>error
12 #若文本為url格式,可解開以下正則,提取IP port 13 #. ./findIPPort.sh 14 #mv ipList.txt ipList.txt`date +%Y%m%d%H%M%S` 15 #過濾配置文件里的所有IP到ipLIst1.txt 16 #grep "http://" ipFile.txt | sed "s/^.*\/\///g"|sed "s/\/.*$//g"|sed "s/:/ /g" > ipList.txt 17 #echo "grep ip port success" 18 19 # 循環輸出每一行ip port 20 cat ipList.txt | while read line 21 do 22 num=$(($num+1)) 23 echo -e "\n$num IP and Port is : telnet $line" 24 # <<代表鍵盤輸入,后邊跟標識符 ,標識符中間為輸入內容,標識符前最好別出現空格 25 telnetFun $line & 26 sleep 0.5 27 # 判斷是否有牆 28 cat log2 2>>error | grep "Connection closed by foreign host" | wc -l >res 29 if [ $(cat res) -eq 1 ] 30 then 31 echo -e "\e[1;32mSuccess!\e[0m" 32 echo $line >> successIP.txt 33 else 34 echo -e "\033[31;5mFailure!\033[31;0m" 35 echo $line >> failureIP.txt 36 cat log2 2>>error | grep "Connection refused" | wc -l >res 37 if [ $(cat res) -eq 1 ] 38 then 39 echo -e "\033[31;5mConnection refused!\033[31;0m" 40 echo "Connection refused" >> failureIP.txt 41 fi 42 fi 43 # 輸出log 44 echo "$num IP and Port is : $line" >> log 45 cat log1 >> log 46 cat log2 >> log 47 echo -e "----------------------\n" >> log 48 rm log1 log2 res 49 done

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM