赞
踩
【调用方法】
1、先编写 VBS 脚本。比如我们要让 xShell 在目标设备需要确认时自动输入 y ,可以像下面这样编写脚本:
- Sub main
- xsh.Screen.Synchronous = True ' 使窗口显示与当前输出同步
- xsh.Screen.WaitForString "Reboot now? (y/n)" ' 等待目标设备发回 "Reboot now? (y/n)" 字符串
- xsh.Screen.Send "y" & VbCr ' 输入字符 y 并回车
- End Sub
2、再在 xShell 中调用脚本。按照顺序 “会话属性” -> “登录脚本” -> 勾选“连接会话时运行脚本” 来选择需要的脚本,如下图:
图1 脚本选择窗口
【注意事项】
1、除了使用 VBScript 来编写,被调用的脚本也可以是 JavaScript 脚本、Python 脚本。
2、不使用脚本也可以实现自动化操作。如 图1,我们可以勾选 “执行以下等待并发送规则”,然后根据需要添加规则。如果你不太熟悉脚本语言,建议你采用这种方式。
【函数及参数说明】
在操作 Xshell 的终端屏幕时可使用下列函数和参数。 为使用这些函数和参数,需同时运行 xsh.Screen。例如要使用‘Clear()’函数应同时启用 ‘xsh.Session.Clear()’。
Functions | |||
返回值 | 函数 | 参数 | 说明 |
void | Clear() |
| 清除终端屏幕。 |
void | Send(LPCTSTR lpszStrToSend) | lpszStrToSend 用户拟要发送的字符串 | 向终端发送消息。 |
BSTR | Get(long nBegRow, long nBegCol, long nEndRow, long nEndCol) | nBegRow 终端的行起始位置 nBegCol 终端的列起始位置 nEndRow 终端的行末端位置 nEndCol 终端的列末端位置 | 读入终端规定区域的字符串后返回值。 |
void | WaitForString(LPCTSTR lpszString) | lpszString 终端中出现的字符串 | 等待消息。 |
Long | WaitForStrings(VARIANT FAR* strArray, long nTimeout) | strArray 终端中出现的字符串 nTimeout 等候时间的毫秒值 返回值 发现的字符数 | 等待消息直至到时。 |
void | Synchronous(BOOL bSync) | bSync 1(True): 使用画面同步化 0(False) : 禁用画面同步化 | 定义画面的同步化。 |
参数 | ||
名称 | 类型 | 说明 |
CurrentColumn | long | 返回当前值。 |
CurrentRow | long | 返回当前行。 |
Columns | long | 返回与终端的列宽相同的列数。 |
Rows | long | 返回与终端的行高相同的行数。 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。