我们常见的执行js代码都是放入到HTML引入后然后通过HTML文件来执行胡查看代码。
显然这是比较麻烦的事情,如果你的电脑里面安装了node.js,你可以使用node来直接使用node来运行你想要运行的js文件。
扩展资料:动态程序一般有两种实现方式,一是二进制方式,一是脚本方式。
二进制方式是先将我们编写的程序进行编译,变成机器可识别的指令代码(如.exe文件),然后再执行。这种编译好的程序我们只能执行、使用,却看不到他的程序内容。
脚本简单地说就是一条条的文字命令,这些文字命令是我们可以看到的(如可以用记事本打开查看、编辑),脚本程序在执行时,是由系统的一个解释器,将其一条条的翻译成机器可识别的指令,并按程序顺序执行。因为脚本在执行时多了一道翻译的过程,所以它比二进制程序执行效率要稍低一些。
在编写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()
}
运行脚本的操作:
实际执行结果如下: