标题:
[网络连接]
批处理怎样自动输入telnet用户名和密码?
[打印本页]
作者:
hg17173
时间:
2008-3-10 09:50
标题:
批处理怎样自动输入telnet用户名和密码?
在BAT中执行到talnet 连接输入密码的命令时没办法输入
有没有高手帮助一下
set /p password=huawei
这组命令也不行!
在telnet中输入密码要怎么写?
作者:
ccccpp
时间:
2011-9-1 14:59
转:
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给设备缓冲延时。
作者:
qiao849
时间:
2012-2-15 21:44
这个只是针对单台网络设备的,如果要批量登录设备要怎么写啊
作者:
xiaoxiami
时间:
2012-2-16 11:08
回复
2#
ccccpp
sendkeys是很有局限性的,在电脑处于屏保状态时不起作用的,而且它也只能输入到当前的活动窗口,但是有可能这个时候会弹出其他窗或者用户在操作别的窗口,这样就不能将起到在规定的窗口输入用户名和密码了
欢迎光临 批处理之家 (http://www.bathome.net/)
Powered by Discuz! 7.2