本意:使用 crt 的 Python 脚本执行基础任务
进度:完善中
模拟步骤
- 打开指定标签页
- 确保命令正确输入到窗口(串口容易乱码等)
- 获得短命令的执行结果
使用注意事项
- 电脑语言环境英文
参考资料
- 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()