【Control】SecureCRT的Python脚本示例

本意:使用 crt 的 Python 脚本执行基础任务
进度:完善中

模拟步骤

  1. 打开指定标签页
  2. 确保命令正确输入到窗口(串口容易乱码等)
  3. 获得短命令的执行结果

使用注意事项

  • 电脑语言环境英文

参考资料

  • crt 自带的脚本示例
  • SecureCRT自动化脚本编写

代码实现

#$language = "Python3"
#$interface = "1.0"

import os

szPrompt = '$'
hostName = 'user@hostname'

def Main():
    #打开指定连接
    session = '127.0.0.1'
    try:
        crt.Session.Connect("/S \"" + session + "\"")
    except ScriptError:
        error = crt.GetLastErrorMessage()
    if crt.Session.Connected:
        #等待远程系统发送结束欢迎数据
        while True:
            if not crt.Screen.WaitForCursor(1):
                break

    objTab = crt.GetScriptTab()
    szCommand = "ls -l"
    objTab.Screen.Send(szCommand + "\r\n")
    #等待输入的命令回显在窗口,否则等待5s持续下发命令
    while not objTab.Screen.WaitForString(szCommand + "\r\n", 5):
        szCommand = "ls -l"
        objTab.Screen.Send(szCommand + "\r\n")
    #获得命令执行结果并弹窗提示
    szResult = objTab.Screen.ReadString(szPrompt)
    #根据主机名获得完整的命令执行结果
    #szResult = szResult.split(hostName)[0]
    crt.Dialog.MessageBox(szResult)
    return

Main()

你可能感兴趣的:(自动化测试,python)