当前位置: 首页 > news >正文

crt脚本退出命令_SecureCRT脚本-连接多个设备并发送命令

#$language = "VBScript"

#$interface = "1.0"

Dim g_szErrors

Sub Main()

Dim objFso, objShell, objTextStream, szLine

Dim vSessionsArray()

Dim nSessionCount

nSessionCount = 0

' 给予数组资源大小为5,后面会以5为基数增加,好处是避免太浪费动态数组占用的内存资源

ReDim vSessionsArray(5)

' 读取txt文件每行数据(包括连接设备Ip,用户名,密码等)到数组中,用于后面的连接

Set objFso = CreateObject("Scripting.FileSystemObject") '创建文件对象objFso

Set objShell = CreateObject("WScript.Shell") '创建shell对象,用于动态获取"我的文档"的路径

Dim szMyDocs, szSessionsFile '定义变量szMyDocs用于存放"我的文档"的路径;szSessionsFile 存放txt文件路径

szMyDocs = objShell.SpecialFolders("MyDocuments") '获取我的文档路径,存放进szMyDocs变量

szSessionsFile = szMyDocs & "\SessionList.txt" '获取txt文件路径,存放进szSessionsFile变量

if Not objFso.FileExists(szSessionsFile) then '如果txt文件不存在,就报错并退出sub

crt.Dialog.MessageBox "Session list file not found:" & vbcrlf & _

vbcrlf & _

szSessionsFile & vbcrlf & vbcrlf & _

"Create a session list file as described in the description of " & _

"this script code and then run the script again."

exit sub

end if

'第二个参数: 1 只读方式打开; 2 写方式打开; 8 文件末尾写操作 ;false 没txt文件不创建,如果true就创建txt文件

Set objTextStream = objFso.OpenTextFile(szSessionsFile, 1, false)

Dim szSession

Do While Not objTextStream.AtEndOfStream '判定是否到最后无数据一行

szSession = "" '将路径值置空

szSession = Trim(objTextStream.ReadLine) '去掉前后空字符串,将读取到的行值赋值给变量

' Don't add empty lines/sessions

if szSession <> "" then

'检测数组下标是否大于等于计算器值,目的:数组下标永远比实际存储值大5的存储空间

if UBound(vSessionsArray) >= nSessionCount then

redim preserve vSessionsArray(nSessionCount + 5)

end if

' 将每行的值赋值给数组,计数器按1递增

vSessionsArray(nSessionCount) = szSession

nSessionCount = nSessionCount + 1

end if

Loop

objTextStream.Close '关闭txt文件

'连接会话并执行命令,枚举数组中每个元素

For Each szSession in vSessionsArray

if szSession = "" then exit for

'MsgBox "Connecting to Session: " & szSession

'on error resume next 后面的代码出现错误会继续运行后续代码

'on error goto 0 终止容错机制

On Error Resume

相关文章:

  • 蔡司三坐标_三坐标蔡司测量三坐标精度三坐标检验维修升级上门搬迁
  • 阿里云服务器 默认mysql_阿里云服务器mysql默认密码
  • mysql 1213_分享一个MySQL死锁问题解决的方法
  • mysql服务器主备份_MySQL 基于主主备份
  • win2012卸载mysql_Sql Server 2012完全卸载方法 只需8步轻松卸载
  • mysql多表查询实训_MySql-多表查询练习
  • mysql 如何解锁_Mysql如何解锁?
  • mysql left a 10_MySQL语法基础
  • demonstration记忆_英语背诵方法之一:意群断句法
  • mysql8分区_mysql8中的表分区
  • ztree 后台异步加载_Ztree 分批异步加载
  • linux执行mysql表_linux shell命令执行sql(mysql入门)
  • python 数组逆序重放_OpenJudge计算概论-找最大数序列
  • python爬虫处理滑块验证_python爬虫基础(9:验证识别之滑块验证)
  • qmediaplayer进度_QMediaPlayer的duration问题
  • 深入了解以太坊
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • Apache Pulsar 2.1 重磅发布
  • CentOS7 安装JDK
  • CSS 提示工具(Tooltip)
  • GraphQL学习过程应该是这样的
  • k个最大的数及变种小结
  • React-Native - 收藏集 - 掘金
  • ReactNative开发常用的三方模块
  • Three.js 再探 - 写一个跳一跳极简版游戏
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 码农张的Bug人生 - 见面之礼
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 通信类
  • 一些关于Rust在2019年的思考
  • 与 ConTeXt MkIV 官方文档的接驳
  • Android开发者必备:推荐一款助力开发的开源APP
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • #大学#套接字
  • (14)Hive调优——合并小文件
  • (26)4.7 字符函数和字符串函数
  • (html转换)StringEscapeUtils类的转义与反转义方法
  • (LeetCode C++)盛最多水的容器
  • (十三)Maven插件解析运行机制
  • (一)Thymeleaf用法——Thymeleaf简介
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿
  • .gitignore文件—git忽略文件
  • .libPaths()设置包加载目录
  • .NET Core中Emit的使用
  • .net经典笔试题
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • /etc/sudoer文件配置简析
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法
  • @RunWith注解作用
  • [ 代码审计篇 ] 代码审计案例详解(一) SQL注入代码审计案例
  • [100天算法】-不同路径 III(day 73)