分析某个网站上的CRT自动化脚本的实用性

分析某个网站上的CRT 动化脚本的实用性

以下是我在某网站摘抄的脚本,该脚本号称可以自动化运维,但是实践中我们发现了存在问题。

#$language = "VBScript"
#$interface = "1.0"
'本脚本示范:从一个文件里面自动读取设备IP地址,密码等,批量配置交换机
Sub Main
'打开保存设备管理地址以及密码的文件
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso,file1,line,str1,params
Set fso = CreateObject("Scripting.FileSystemObject")
Set file1 = fso.OpenTextFile("e:\config.txt",Forreading,False)
crt.Screen.Synchronous = True
DO While file1.AtEndOfStream <> True
'读出每行
line = file1.ReadLine
'分离每行的参数 IP地址 密码 En密码
params = Split (line)
'Telnet到这个设备上
crt.Session.Connect "/TELNET " & params(0)
'输入telnet账户
crt.Screen.WaitForString "Username:"
crt.Screen.Send params(1) & vbcr
'输入telnet账户密码
crt.Screen.WaitForString "Password:"
crt.Screen.Send params(2) & vbcr
'批量配置的命令
crt.Screen.WaitForString ">"
crt.Screen.Send "sys" & vbcr
crt.Screen.WaitForString "]"
crt.Screen.Send "save" & vbcr
crt.Screen.WaitForString "[Y/N]:"
crt.Screen.Send "y" & vbcr
crt.Screen.WaitForString ":"
crt.Screen.Send vbcr
crt.Screen.WaitForString "[Y/N]:"
crt.Screen.Send "y" & vbcr
crt.Sleep 1000
crt.Session.Disconnect

   loop
crt.Screen.Synchronous = False           
End Sub

其中以下这几段命令中原意为等待进入"<>“视图即进行下一步命令并输入"sys”,在实际操作过程中由于交换机命名过长或者>不易被vbs语言识别,经常导致脚本卡在该行无法进行后续的脚本,目前我还没有找到方法,发在博客看看大神聚集的地方有没有人能解决。:

crt.Screen.WaitForString ">"
crt.Screen.Send "sys" & vbcr
crt.Screen.WaitForString "]"
crt.Screen.Send "save" & vbcr

今天的学习就到这里吧,

原文地址:该脚本出处

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值