xShell 脚本

最近需要写个自动交互脚本,发现 xShell 可以直接运行,真是方便不少。

xShell 支持三种脚本文件:VBScript、JavaScript 和 Python。

VBScript

文件名以 vbs 结尾,sublime 可以安装插件(VBScript)方便调试。

基本语法1

常量2

  • VbCrLf:换行符
  • Chr(8):退格符
  • VbTab:制表符
  • VbCr:回车符

变量

字符串:str="I am string"
数组:

1
2
3
4
5
6
7
dim array(n)
array(0)="1"
array(1)="2"
.
.
.
array(n-1)="n"

函数

定义:

1
2
3
Sub FuncName(argv1, argv2)
...
End Sub

调用:

1
FuncName input1, input2

不需要加括号

例子3

进入 /root 路径,新建文件写入「Hello World」并保存。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
ready="# "

Sub send(str)
xsh.Screen.Send str
xsh.Session.Sleep 100
xsh.Screen.Send VbCr
xsh.Screen.WaitForString ready
End Sub

Sub main
xsh.Screen.Synchronous = True
send "cd /root/"
xsh.Screen.Send "vi test"
xsh.Session.Sleep 100
xsh.Screen.Send VbCr
xsh.Session.Sleep 100
xsh.Screen.Send "a"
xsh.Session.Sleep 100
xsh.Screen.Send "Hello World"
xsh.Screen.Send VbCr
xsh.Screen.Send Chr(27)
xsh.Screen.Send ":wq"
xsh.Screen.Send VbCr
End Sub

Python

需要安装 Python,有些麻烦。


xShell 脚本
https://wishlily.github.io/article/tools/2017/12/06/undefined/
作者
Wishlily
发布于
2017年12月6日
许可协议