中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 06:37
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 同时VBS telnet多台设备?(已基本解决!) 查看 1,645 回复 2
楼 主 同时VBS telnet多台设备?(已基本解决!) 发表于 2009-07-09 22:26 ·  中国 安徽 马鞍山 电信
中级用户
★★
积分 493
发帖 228
注册 2007-02-16 00:38
19年会员
UID 79596
性别 男
来自 安徽
状态 离线
要求:
有多台设备,想用“批处理”同时修改密码,
无需人工干预,自动进行,
怎么办?

ip.txt
192.168.53.2
192.168.54.2
192.168.55.2
……

试着用FOR命令,有点问题


在论坛中搜索到得:
@echo off
rem 假设主机地址是ABC
rem 假设用户名是DEF
rem 假设密码是GHI
echo Set WshShell = CreateObject("WScript.Shell")>%tmp%\TelDelphi1.vbs
echo WshShell.Run "telnet ABC">>%tmp%\TelDelphi1.vbs
echo WScript.Sleep(5000)>>%tmp%\TelDelphi1.vbs
echo WshShell.SendKeys "DEF{enter}">>%tmp%\TelDelphi1.vbs
echo WScript.Sleep(1000)>>%tmp%\TelDelphi1.vbs
echo WshShell.SendKeys "GHI{enter}">>%tmp%\TelDelphi1.vbs
start cscript /nologo %tmp%\TelDelphi1.vbs
ping -n 10 127.1>nul
del /q %tmp%\TelDelphi1.vbs



还有:
1台机器,试验成功。

如果有几台机器,并且希望通过“批处理程序”telnet修改密码
无需人工干预,自动进行
怎么办?


test.bat

@echo off&setlocal enabledelayedexpansion
for /f %%a in (ip.txt) do (
set ip=%%a
goto :VBS
)

:VBS
echo Set WshShell = CreateObject("WScript.Shell")>%tmp%\TelDelphi1.vbs
echo WshShell.Run "telnet !ip!">>%tmp%\TelDelphi1.vbs
echo WScript.Sleep(5000)>>%tmp%\TelDelphi1.vbs
echo WshShell.SendKeys "DEF{enter}">>%tmp%\TelDelphi1.vbs
echo WScript.Sleep(1000)>>%tmp%\TelDelphi1.vbs
echo WshShell.SendKeys "GHI{enter}">>%tmp%\TelDelphi1.vbs
start cscript /nologo %tmp%\TelDelphi1.vbs
ping -n 10 127.1>nul
del /q %tmp%\TelDelphi1.vbs

好像不能设置第2台机器
???

[ Last edited by xycoordinate on 2009-7-10 at 05:41 ]
2 发表于 2009-07-10 05:39 ·  中国 安徽 马鞍山 电信
中级用户
★★
积分 493
发帖 228
注册 2007-02-16 00:38
19年会员
UID 79596
性别 男
来自 安徽
状态 离线
论坛搜索到:
http://www.cn-dos.net/forum/viewthread.php?tid=29699&fpage=0&highlight=&page=1

感谢:
everest79

tel.cmd
@ECHO OFF
ECHO .
ECHO .
ECHO .
ECHO .
ECHO 注意:即将开始远程批配置请关闭其它可执行程序
ECHO 注意:配置过程中不要使用鼠标及键盘
ECHO .
ECHO .
ECHO .
ECHO .
ECHO 按任意键开始EIA远程批配置
pause>nul
if exist log.txt del /q log.txt
for /f %%i in (list.txt) do start telnet %%i && cscript //nologo telsvr.vbs %%i && echo %%i done!>>log.txt

ECHO 批量配置完成
pause>nul

telsvr.vbs
set tel=WScript.CreateObject("WScript.Shell")
temp=WScript.Arguments.Item(0)
WScript.Sleep 5000
tel.SendKeys "admin{ENTER}"
WScript.Sleep 1500
tel.SendKeys "admin{ENTER}"
WScript.Sleep 1500

list.txt
192.168.51.2
192.168.52.2
192.168.53.2
……
根据实际情况,修改list.txt

[ Last edited by xycoordinate on 2009-7-10 at 05:50 ]
3 发表于 2010-06-09 13:40 ·  中国 安徽 马鞍山 电信
中级用户
★★
积分 493
发帖 228
注册 2007-02-16 00:38
19年会员
UID 79596
性别 男
来自 安徽
状态 离线
注意:密码里不能有+%^
VBS
键 特殊字符
SHIFT +
CTRL ^
ALT %

http://www.cn-dos.net/forum/viewthread.php?tid=51567&fpage=1
论坛跳转: