secureCRT脚本如何实现查找当前屏显文本中最后一个出现的关键字如sd*并获取该关键字呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了secureCRT脚本如何实现查找当前屏显文本中最后一个出现的关键字如sd*并获取该关键字呢?相关的知识,希望对你有一定的参考价值。

大概意思是这样的:假设当前secureCRT中当前屏显中有关键字sda,sdb sdc,sdd.......(这些关键字出现在不同的行),我的目的是要获取最后一个出现的以sd开头的关键字。请高手们帮解决一下!

参考技术A secureCRT中ctrl+F 查找
方向向上追问

哥,我是说写脚本

参考技术B 拉萄丁

SecureCRT自动备份-思科

利用SecureCRT脚本对思科设备进行批量备份:

 

(1)新建文本文件(注意保存路径,本次测试路径为D:\backup\list.txt):

  x.x.x.x username password enable_password   (#注:如果没有enable密码可以不写;每项用空格分割)

(2)新建文本文件cisco.txt(路径D:\backup\cisco.txt),内容如下:

# $language = "VBScript"
# $interface = "1.0"

Sub Main
     
     Const ForReading = 1, ForWriting = 2, ForAppending = 8
     Dim fso,file1,line,str1,params
     Set fso = CreateObject("Scripting.FileSystemObject")
     Set file1 = fso.OpenTextFile("D:\backup\list.txt",Forreading, False)        
     crt.Screen.Synchronous = True
     do while file1.AtEndOfStream <> True        
        line = file1.ReadLine       
        params = Split (line)
        crt.session.LogFileName = "D:\backup\conf\" & params(0) & ".txt"
        crt.session.Log(true)
        telnet登录
        crt.Session.Connect "/TELNET " & params(0)
        
        输入用户名
        crt.screen.WaitForString "Username:",1
        crt.screen.send params(1) & Chr(13)
        
        输入密码
        crt.Screen.WaitForString "Password:"
        crt.Screen.Send params(2) & Chr(13)
        
        进入特权模式(enable)
        crt.Screen.Send "enable" & Chr(13)
        crt.Screen.waitForString "#" 
    
        执行sh run命令
        crt.Screen.Send "sh run" & Chr(13)
        crt.Screen.WaitForString " --More-- "
        crt.Screen.Send "                             "
        crt.screen.send Chr(13)
        crt.Screen.waitForString "end" 
        crt.Screen.waitForString "#" 
        执行sh ip int b命令 
        crt.Screen.Send "sh ip int b" & Chr(13)
        crt.Screen.Send "        "
        crt.screen.send Chr(13)
        crt.Screen.waitForString "#" 
        crt.screen.send Chr(13)
        crt.Screen.waitForString "#" 
        crt.screen.send Chr(13)
        保存配置
        crt.Screen.Send "wr" & Chr(13)
        crt.Screen.waitForString "[OK]",8
        crt.Screen.waitForString "#" 
        crt.screen.send Chr(13)        
        crt.Session.Disconnect         
        crt.Screen.Synchronous = False        
        loop
          
End Sub

 

(3)修改上面文本后缀个是为.vbs,即cisco.vbs;

(4)运行CRT软件,菜单栏-->脚本-->执行-->找到脚本路径D:\backup\cisco.vbs;

(5)查看备份文件保存路径D:\backup\conf\。

 

以上是关于secureCRT脚本如何实现查找当前屏显文本中最后一个出现的关键字如sd*并获取该关键字呢?的主要内容,如果未能解决你的问题,请参考以下文章

查找文本中最常见的词

如何在Pandas数据帧(Python)中查找语料库中最常用的单词

Selenium WebDriver中最常用的Java脚本功能是什么?

SecureCRT中python脚本编写学习指南

Emacs如何在当前verilog文件中根据选中的文本快速查找并高亮显示

SecureCRT自动备份-思科