[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 批处理怎样自动输入telnet用户名和密码?

在BAT中执行到talnet 连接输入密码的命令时没办法输入
有没有高手帮助一下
set     /p password=huawei
这组命令也不行!
在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给设备缓冲延时。
1

评分人数

    • Batcher: 请编辑自己的帖子,把代码放到code标签里面 ...PB -2

TOP

这个只是针对单台网络设备的,如果要批量登录设备要怎么写啊

TOP

回复 2# ccccpp


    sendkeys是很有局限性的,在电脑处于屏保状态时不起作用的,而且它也只能输入到当前的活动窗口,但是有可能这个时候会弹出其他窗或者用户在操作别的窗口,这样就不能将起到在规定的窗口输入用户名和密码了

TOP

返回列表