当前位置 主页 > 服务器问题 > Linux/apache问题 >

    securecrt crt,SecureCRT crt.Screen.WaitForString用法

    栏目:Linux/apache问题 时间:2021-02-20 11:16

         在SecureCRT里,用得最多的应该就是crt.Screen,基本上很多操作都是基于屏幕的返回字来决定下一步的操作。这里脚本语言使用VBScript进行讲解。
         Screen之屏幕返回判断
         在判断屏幕返回字的函数里,主要用到的是两个:
         1、crt.Screen.WaitForString("KeyString",timeout)
         2、crt.Screen.WaitForStrings("KeyString1","KeyString2",...,timeout)
         WaitForString详解(一)
         第一个函数是单字符串判断,KeyString是需要查找的关键字,timeout是一个超时阀值,例如:
    crt.Screen.WaitForString("Username:",5)
         该行代码的意思就是在5秒内没有检测到Username:出现,就执行下一条语句,如果改成:crt.Screen.WaitForString("Username:")
         那就是指直到Username:出现才执行下一行代码。
    WaitForString是有返回值的,返回值是True 或者 False。
         因此,可以根据返回值进行条件判断以确定一下条代码。例如:
    If (crt.Screen.WaitForString ("current state : UP",1)<>False) Then
    portStatus="PortUP"
    Else
    portStatus="PortDown"
    End If
         这段代码用于判断端口状态情况并记录下来。
         WaitForStrings详解(二)
         第二个函数用于多个字符串的判断,timeout的作用是一样的。例如:
    crt.Screen.WaitForStrings("cisco","huawei","H3C",5)
         意思就是在5秒内检测到相应的字符时,返回相应的索引号(索引号是从1开始的),如果都没有检查到,则返回0。
    因此,该函数的使用可以如下:
    Dim SwitchKey
    SwitchKey=crt.Screen.WaitForStrings("cisco","huawei","H3C",5)
    Select case SwitchKey
    case 1
    MsgBox "思科设备"
    case 2
    MsgBox "华为设备"
    case 3
    MsgBox "华三设备"
    case else
    MsgBox "未知设备"
    End Select
         原文链接:https://blog.csdn.net/YUAN1125/article/details/53697752