如何用shell脚本实现自动telnet-snowtty-ChinaUnix博客
Shell脚本自动Telnet并执行远端机器的脚本 简单使用状况[plain]#!/bin/sh(sleep 10;echo "username";sleep 10;echo "password";sleep 10;echo "pwd";sleep 50;#echo exit)|telnet $ip这里只是连接到远端机器,查看一下当前所在的目录。username/password 是telnet 到远端机器的用户名,密码sleep 是一个等待时间,根据具体的机器状况或是执行命令的需要的时间来设置。带变量使用 [plain]

shell脚本telnet登陆交换机备份配置
#!/bin/bash export datetime='date +%Y%m%d'export BAKTIME=`date +%Y%m%d%H%M%S`export user="admin"export password="admin"export back="dis cu"export BAK_DIR=/back/h3cfor i in $(cat ip_file)do{echo $user;sleep 1;echo $password;sleep 1;echo $back;sleep 1;echo " ";sleep 5;}|telnet $i > $BAK_DIR/$i-$BAKTIME.logdonemkdir $BAK_DIR/H3C_$datetimemv *-$datetime* H3C_$datetime注释####################################export BAKTIME=`date +%Y%m%d%H%M%S` 输出系统时间export user="admin"此用户为交换机、路由器用户名export password="admin"此密码为交换机、路由器密码export back="dis cu"此命令为查看H3C交换机配置export BAK_DIR=/home/erp/back/h3c 此目录是linux服务器备份交换机、路由器的存放目录catip_file 此命令意思是查看ip_file文件中的内容,逐行查看####################################ip_file文件添加交换机IP(注意:不要加双引号, 文件与脚本在同一目录下存放)#以下为交换机、路由器IP地址192.168.1.1192.168.1.2192.168.1.3192.168.1.4192.168.1.5 192.168.1.7
建议弄一个自动化telnet的程序吧, 这个不是很困难的啊,如果搞不定的话, 可以帮助解决一下的哦 能否看一下my网名呢?

python telnet 脚本怎么 ping ip ?
(1)安装telnetd(即telnet-server):apt-get install telnetd (2)安装xinetd(telnet-server的运行需要由xinetd来管理):apt-get install xinetd(3)配置telnet文件:vi /etc/xinetd.d/telnet(4)开启xinetd:service xinetd start#!/usr/bin/env python#coding=utf-8import sysimport telnetlibimport osimport timeenter='n'filehead="D:\file\"filetail=".txt"def getfile(filename):f=open(filename,'w+')while(1):ret=tn.read_until('#',1)f.write(ret)if '#' in ret:breakelse:for i in range(10):tn.write(' ')time.sleep(0.1)f.close()#check the file is existd or notdef get(string):tn.write(string+enter)filename=filehead+string.replace(' ','-')+filetailgetfile(filename)print string+' information is in '+filenameprint 'Router#'def login():password=sys.argv[2]#get ordinary certificatetn.read_until("Password: ",1)tn.write(password + enter)#want to get admin certificatetn.read_until("Router>",1)tn.write('en'+enter)#get admin certificatetn.read_until("Password: ",1)tn.write(password + enter)#enter routeprint tn.read_until("Router#",1)def options():showstring=["show version","show arp","show run","show running-config","show startup-config","show ip interface brief","show ip route"]while 1:string=raw_input()string=string.lower()if string=='exit':tn.write('exit'+enter)print 'exit success'breakelif string in showstring:get(string)else:print 'wrong input'print 'please enter an order'if __name__ == "__main__":Host=sys.argv[1]tn=telnetlib.Telnet(Host)login()options() 使用方法是:python *.py ip号 登陆密码

Linux如何通过脚本,不停地telnet一个IP,记录telnet成功的时间并输出?
Telnet本身对另一台服务器检查时,容易退不出来。使用Nmap比较合适,然后写个如下脚本,变更IP及相应的端口及Sleep的时间就可以达到目标。如下参考:#!/bin/bash#Purpose:check ip portPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATH# Check if user is rootif [ $(id -u) != "0" ]; then echo "Error: You must be root to run this script" exit 1fiCur_Dir="$(cd -P "$(dirname "${BASHSOURCE[0]}")" && pwd)"Cur_Time="$(date +%Y%m%d%H%M%S)"Dest_Ip=172.16.3.19Dest_Port=22if [ ! -f /usr/bin/nmap ];thenyum -y install nmapelse:fifunction Check_Port(){Port_State=$(nmap -P0 -sS -p${Dest_Port} ${Dest_Ip}|awk '/STATE/{getline v;print v}'|awk '{print $2}')if [ X${Port_State}==X'open' ];thenecho "${Dest_Ip} ${Dest_Port} is open" >>${Cur_Dir}/status.txtecho "${Cur_Time}" >>${Cur_Dir}/status.txtelseecho "${Dest_Ip} ${Dest_Port} is failure" >>${Cur_Dir}/status.txtecho "${Cur_Time}" >>${Cur_Dir}/status.txtfi}while true;doCheck_Portsleep 3done
不需要使用脚本吧,直接telnet ip 端口 -a就行了

如何实现linux的批处理telnet脚本
把ip地址保存为ip.txt 把cd /tksys/startup/sed -i '/^ntpsvr=/ s/[^=]*$/'`sed -n '/^default=/ s/[^=]*=//p' network.cfg`'/' network.cfg保存为2.txtcatip.txt|while read line ;do telnet $line userpassword<2.txt ;done 就这样的思路 俺不懂没测试过
如现在IP:192.168.12.2,192.168.20.3,10.1.2.1...,处理完一台主机后自动更换下一个IP地址继续执行。而且所有主机的用户名和密码相同。用户名:user密码:passwordtelnet到Linux主机后执行的命令如下:cd /tksys/startup/sed -i '/^ntpsvr=/ s/[^=]*$/'`sed -n '/^default=/ s/[^=]*=//p' network.cfg`'/' network.cfg。由于被telnet的Linux主机的网络不稳定,希望在输入用户名到最后一条配置的每一条命令都设一个延时处理。如脚本输入用户名user后,2s后执行输入密码password,输入密码的2s后再执行cd /tksys/startup/,以此类推。
1, 建议配置ssh连接,并且passwordless登陆 2, 或者用expect也比较简单
用ssh 加上public登陆 轻松快捷
蛋疼了吧,当初为什么不使用集群管理软件呢。那么多的开源集群管理软件给你选择,你还要自己写脚本。

本文由 在线网速测试 整理编辑,转载请注明出处。