telnet自动登录路批处理

 telnet自动登录路由器、交换机等网络设备的批处理


@echo off


echo set sh=WScript.CreateObject("WScript.Shell") >telnet_tmp.vbs


echo WScript.Sleep 300 >>telnet_tmp.vbs


echo sh.SendKeys "open 你的网络设备telnet登录IP" >>telnet_tmp.vbs


echo WScript.Sleep 300 >>telnet_tmp.vbs


echo sh.SendKeys "{ENTER}" >>telnet_tmp.vbs


echo WScript.Sleep 300 >>telnet_tmp.vbs


echo sh.SendKeys "你的用户名{ENTER}">>telnet_tmp.vbs


echo WScript.Sleep 300 >>telnet_tmp.vbs


echo sh.SendKeys "你的密码{ENTER}">>telnet_tmp.vbs


start telnet


cscript //nologo telnet_tmp.vbs


del telnet_tmp.vbs






解释:


本段代码WScript.Sleep 300 表示登录设备延时,就是给设备一个接受出来的时间;open 是打开telnet,并登录到指定ip地址;{ENTER}自然是回车了;SendKeys是关键,表示自动输入的内容。保存以上内容为rout.bat批处理文件,每次登录网络设备就不要先win+R -- cmd -- telnet IP -- 用户名 -- 密码 这样麻烦了,直接运行这个bat文件即到达登录状态。当然,如果你想登录后进入其他状态,比如conf配置状态,你还可以在输入密码后面再加几行,比如:






...






echo WScript.Sleep 300 >>telnet_tmp.vbs


echo sh.SendKeys "你的密码{ENTER}">>telnet_tmp.vbs


echo WScript.Sleep 300 >>telnet_tmp.vbs


echo sh.SendKeys "conf{ENTER}">>telnet_tmp.vbs


start telnet


...






telnet登陆后的命令在start telnet之后写,如需回车还要加上{ENTER},和延时命令






有的交换机在输入后需要更多的等待时间,可以酌情多增加几行echo WScript.Sleep 300 >>telnet_tmp.vbs给设备缓冲延时。

你可能感兴趣的:(telnet自动登录路批处理)