SecureCRT脚本

SecureCRT是VanDyke Software的一个商业SSH、Telnet客户端和虚拟终端软件,简单的说,是用于连接本地机器与远程服务器的工具,类似功能的工具有Putty、Xshell等。

SecureCRT支持的协议包括SSH1、SSH2、Telnet、RLogin、Serial、TAPI、Raw。这里记录SecureCRT对脚本的支持。

一、脚本创建方式

SecureCRT支持脚本的文件类型包括js、VBScript、Python等。
有两种创建脚本的方式:

  • 录制脚本
    将你在SecureCRT中的一系列操作录制成脚本
  • 写脚本
    可以选择自己熟悉的语言,降低学习成本,SecureCRT对不同语言脚本功能支持差异较小。

二、脚本执行方式

通常情况下,只需要点击Script->Run,然后选择脚本执行即可。
如有更多需求,可以详细看下面的几种执行方式。

1、人工执行脚本

(1)Script->Run选择脚本
(2)通过快捷键执行
通过Options设置map a key, 可以设置通过固定的快捷键组合可以执行指定的脚本
(3)通过点击button执行
view -> button bar, 在button bar 右键设置button,可以定义不同的button,可以设置每
个button执行一个特定的脚本,以后每次点击button即可执行

2、自动化执行脚本

(1)对于一个已经保存的会话(session),可以配置一个logon script, 实现每次连接这个会话时执行一个指定的脚本。
会话 --> 右键 --> 选择properties 设置 logon script
(2)命令行执行
进入SecureCRT.exe 所在目录,执行SecureCRT.exe /SCRIPT + 文件名即可。
如有更多需求,可以添加参数 /Arg + 参数
对于已经保存(pre-configured)的会话,可以添加/S + 会话名 指定执行此脚本的会话;
对于临时会话(ad hoc connection),可以SecureCRT.exe /SCRIPT 文件名 协议名 /L username /PASSWORD pwd hostname
例如SecureCRT.exe /SCRIPT 文件名 /SSH2 /L user /PASSWORD pwd 192.168.0.1

三、 脚本功能

这里只是简单的记录脚本支持的功能,初学者如果需要具体使用的方法,可以参考http://www.cnblogs.com/OnOwnRoad/p/4893457.html ,里面的示例使用JS脚本。另外可以参见SecureCRT客户端中Help->Help Topics->Scripting,介绍很详细。

1、 远程连接

(1) 对于已经保存的会话

crt.Session.Connect("/S hostname")

(2) 对于临时会话

crt.Session.Connect("/protocol /L username /PASSWORD pwd hostname")

(3) 多个连接 in tabs
一种方式:命令行执行加 /T
例如:

SecureCRT.exe /T /S "Redhat 8" /S "Cisco Pix" /S "SuseServer"

另一种方式:
在脚本中使用Session.ConnectInTab()

(4) 克隆会话
Tab.Clone()

(5) 打开一组会话,可以给每个会话发送消息
例如:

####### $language = "Python"
####### $interface = "1.0"

def main():
crt.Session.Connect("/S 10.142.113.224")
crt.Session.ConnectInTab("/S copy")
func()

def func():
tab1 = crt.GetTab(1)
tab1.Screen.Send("ls -l\r\n")
tab2 = crt.GetTab(2)
tab2.Screen.Send("df -h\r\n")

main()

2、 从远程设备读数据

  • 等待特定的数据到达
    crt.Screen.WaitForString()
  • 等待特定的数据中的一个到达
    crt.Screen.WaitForStrings()
  • 只要有数据到达就开始捕获数据
    crt.Screen.ReadString()
  • 监听按键事件
    crt.Screen.WaitForKey
  • 监听游标移动
    crt.Screen.WaitForCursor
  • 截获屏幕上特定位置出现的字符串
    crt.Screen.Get
    crt.Screen.Get2

3、 给远程设备发送数据

  • 发送字符串
    crt.Screen.Send()
  • 发送SecureCRT的内建命令
    crt.Screen.SendSpecial()

4、 人机对话

  • 选择文件
    crt.Dialog.FileOpenDialog()
  • 弹出信息框
    crt.Dialog.MessageBox()
  • 弹出提示用户输入的信息框
    crt.Dialog.Prompt()

5、 记录日志

crt.Session.Log()

6、 传输文件

使用FileTransfer对象实现上传文件和下载文件

7、 存储数据到剪贴板

使用Clipboard对象存储数据到剪贴板,可以设置不同的格式(format)

8、 针对tab

  • crt.GetActiveTab
  • crt.GetScriptTab
  • crt.GetTabCount
  • 按照tab顺序按索引操作crt. GetTab(index)

9、 操作窗口(window)

  • 检查活跃状态
  • 设置标题
  • 隐藏、最小化、最大化

SecureCRT脚本相关推荐

  1. SecureCRT脚本-Python

    SecureCRT脚本-Python 这里写两个小脚本 # $language = "python" # $interface = "1.0"#官方的实例可以在 ...

  2. SecureCRT脚本(VBS)运行

    SecureCRT脚本(VBS)运行 在SecureCRT运行脚本,自动收发数据监控记录运行状态. 参考: 示例代码: #$language = "VBScript" #$inte ...

  3. SecureCrt脚本(一)顶级对象之Crt

    SecureCrt脚本(一)顶级对象之Crt Crt自动化测试SecureCrt脚本JS脚本 1.引言 2.关于脚本表头 3.顶级对象'crt'的子属性和方法 3.1.属性 3.1.1.Dialog ...

  4. secureCRT脚本编写

    secureCRT脚本编写 secureCRT脚本编写 脚本编写实例 python脚本 js脚本 secureCRT支持三种脚本语言:vbs,Js,python.三种脚本分别以一下三种形式开头: // ...

  5. SecureCRT脚本之WaitForString函数

    在SecureCRT里,用得最多的应该就是crt.Screen,基本上很多操作都是基于屏幕的返回字来决定下一步的操作.这里脚本语言使用VBScript进行讲解. =================== ...

  6. securecrt调试c语言程序,SecureCRT脚本编写常用函数之WaitForString

    在我早先写的博文里,有写了一些代码,因为近段时间又接触了一些需求,因此就想把一些常用的功能函数进行一下总结. 作为一个高效的网管员,脚本.编程我个人认为至少会一种,如果真不会,那至少也要会使用多种网管 ...

  7. secureCRT脚本----vbs语法

    常用语句: 1.CRT命令 '发送命令 crt.Screen.Send "whyy@dsl-vty" & chr(13) '等待字符串出现 crt.Screen.WaitF ...

  8. 使用SecureCRT脚本备份网络设备配置的一点感悟

    https://blog.csdn.net/qq_25294171/article/details/85158458 转载于:https://www.cnblogs.com/diyunpeng/p/1 ...

  9. SecureCRT中Python脚本编写学习指南

    引言 在测试网络设备中,通常使用脚本对设备端进行配置和测试以及维护:对于PE设备的测试维护人员来说使用较多是SecureCRT工具:SecureCRT支持VB.JavaScript.Python等多种 ...

最新文章

  1. leetcode1. 两数之和--每天刷一道leetcode系列!
  2. 用 C 语言开发一门编程语言 — 异常处理
  3. Java 洛谷 P1321 单词覆盖还原
  4. Alpha冲刺博客集
  5. 【定时任务】Quartz用法详解
  6. android中文离线api_比林肯法球Linken sphere浏览器更多更新指纹的国产防关联软件-VMLogin中文版浏览器...
  7. linux内核分析实验三,linux内核分析第三次实验
  8. Yaniv Erlich:DNA 很可能是人类终极的储存设备
  9. weiapi2.2 HelpPage自动生成接口说明文档和接口测试功能
  10. Vue的生命周期函数和beforeRouteEnter()/beforeRouteLeave()的函数
  11. webpack系列之-原理篇
  12. 麦当劳将携手逾100所职业院校提升就业能力;百胜中国一季度开设315家新店 | 美通企业日报
  13. JavaScript原理(一)
  14. 3533: 黑白图像
  15. 谷歌大牛 Jeff Dean 是如何成为互联网战神的
  16. 机器学习中火爆的对抗学习是什么,有哪些应用?
  17. linux 快速建文件目录,在Linux中批量创建和修改文件或目录
  18. 凉面经-维恩贝特面试复盘
  19. 引流三十六招第十四招:蹭热门工具流量,日引上千精准粉
  20. python+playwright 学习-6.截图使用

热门文章

  1. 磨刀霍霍向猪羊Android第一次
  2. C语言str-xxx字符串库函数处理大全【超详细】
  3. C语言与MYSQL数据库的连接
  4. AHB总线介绍【1】
  5. 国家政策去oracle,oracle的lifetime support政策
  6. 狭义云计算和广义云计算_什么是云计算? 您现在需要知道的一切
  7. 422接收数据00_串口通信232/485/422 详细解析
  8. kerberods挖矿病毒查杀及分析(crontab 挖矿 curl -fsSL https://pastebin.com/raw)
  9. RS推荐系统-基于流行度的推荐
  10. BWI、CWI、BWT、CWT、WWI、WWT含义