批处理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
现在好像都流行用这串代码,可是我在密码那里填写像“%、#、。”这样的特殊字符时为什么就会出错呢,还有用这个脚本对自动填入的内容有长度限制吗?
要管理的网络设备很多,有很多还不只直接TELNET,需要一个设备一个设备的tel过去,很麻烦,我就想用脚本自动登录上去,并做一些常规的检查指令,可是有些设备的密码有特殊字符,有的密码又很长,这让我很郁闷

第1个回答  2011-09-13
对这个不熟,不过我说下我的做法,比你的简单易操作。

软件secureCRT,在连接里面建立一个你要登录的设备,然后设置下这个连接的登录脚本就OK。
第2个回答  2011-09-13
%、#、
特殊符号前加转义字符^
^% ^#追问

还是不可以啊,密码无法写入脚本中,所以运行过程中还是不能正常填写密码,假设我的密码是%123.abc%,那我那一行该怎么写

追答

echo sh.SendKeys "%%123.abc%%%{ENTER}">>telnet_tmp.vbs

追问

我式了下,在脚本中显示的密码是正确的,但是上设备后还是不行,是VBS不能输入这样的特殊字符吗

虽然还是不行,还是要谢谢你。

本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网