1.构建JS登录脚本

如题所述

第1个回答  2022-07-21

在编写xshell脚本的过程中用到最多的就是自动输入,自动捕获,延时等语句

自动输入
以自动输入xyz为例

自动输入的语句:xsh.Screen.Send("xyz");

当然,如果你输入的是一条命令,还需要下面这一行输入回车

输入回车的语句:xsh.Screen.Send(String.fromCharCode(13));

自动捕获
以linux系统为例,一般程序执行的打印数据位于倒数第二行,如下图所示

/* 字符串处理 */

var ScreenRow, ReadLine, Items;

/* 读取倒数第二行,长度为40个字符 */

ScreenRow = xsh.Screen.CurrentRow - 1;

ReadLine = xsh.Screen.Get(ScreenRow, 1, ScreenRow, 40);

延时
以等待1s为例

延时语句:xsh.Session.Sleep(1000);

其他
打开新会话:xsh.Session.Open(string);

对话框提醒:xsh.Dialog.MsgBox(string);

设置日志路径:xsh.Session.LogFilePath = string;

开始记录日志:xsh.Session.StartLog();

清屏函数:xsh.Screen.Clear();

等待输入:xsh.Screen.WaitForString(string);

示例
本文以一个自动测试脚本为例,定时向/tmp/test文件写入数据,然后回读打印,截获回读打印的值进行分析

/* 测试函数 /
function test()
{
/
发送echo 112233 > /tmp/testfile */
xsh.Screen.Send("echo 112233 > /tmp/testfile");
xsh.Screen.Send(String.fromCharCode(13));

}

/* 主函数 /
function Main()
{
/
打开会话,根据实际的会话路径修改 */
xsh.Session.Open("C:\Users\Administrator\Documents\NetSarang Computer\6\Xshell\Sessions\ubuntu.xsh");
xsh.Screen.Synchronous = true;

// xsh.Screen.WaitForString("start");

// xsh.Screen.Clear();
}
运行脚本的操作:

在编写xshell脚本的过程中用到最多的就是自动输入,自动捕获,延时等语句

自动输入
以自动输入xyz为例

自动输入的语句:xsh.Screen.Send("xyz");

当然,如果你输入的是一条命令,还需要下面这一行输入回车

输入回车的语句:xsh.Screen.Send(String.fromCharCode(13));

自动捕获
以linux系统为例,一般程序执行的打印数据位于倒数第二行,如下图所示

/* 字符串处理 */

var ScreenRow, ReadLine, Items;

/* 读取倒数第二行,长度为40个字符 */

ScreenRow = xsh.Screen.CurrentRow - 1;

ReadLine = xsh.Screen.Get(ScreenRow, 1, ScreenRow, 40);

延时
以等待1s为例

延时语句:xsh.Session.Sleep(1000);

其他
打开新会话:xsh.Session.Open(string);

对话框提醒:xsh.Dialog.MsgBox(string);

设置日志路径:xsh.Session.LogFilePath = string;

开始记录日志:xsh.Session.StartLog();

清屏函数:xsh.Screen.Clear();

等待输入:xsh.Screen.WaitForString(string);

示例
本文以一个自动测试脚本为例,定时向/tmp/test文件写入数据,然后回读打印,截获回读打印的值进行分析

/* 测试函数 /
function test()
{
/
发送echo 112233 > /tmp/testfile */
xsh.Screen.Send("echo 112233 > /tmp/testfile");
xsh.Screen.Send(String.fromCharCode(13));

}

/* 主函数 /
function Main()
{
/
打开会话,根据实际的会话路径修改 */
xsh.Session.Open("C:\Users\Administrator\Documents\NetSarang Computer\6\Xshell\Sessions\ubuntu.xsh");
xsh.Screen.Synchronous = true;

// xsh.Screen.WaitForString("start");

// xsh.Screen.Clear();
}
运行脚本的操作:

实际执行结果如下:

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网