Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
后端镜像
Tabby
提交
9eee600c
T
Tabby
项目概览
后端镜像
/
Tabby
通知
31
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Tabby
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9eee600c
编写于
9月 28, 2018
作者:
D
Domain
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
optional script
上级
24288fac
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
34 addition
and
12 deletion
+34
-12
terminus-ssh/src/api.ts
terminus-ssh/src/api.ts
+23
-12
terminus-ssh/src/components/editConnectionModal.component.pug
...inus-ssh/src/components/editConnectionModal.component.pug
+9
-0
terminus-ssh/src/components/editConnectionModal.component.ts
terminus-ssh/src/components/editConnectionModal.component.ts
+2
-0
未找到文件。
terminus-ssh/src/api.ts
浏览文件 @
9eee600c
...
...
@@ -4,6 +4,7 @@ export interface LoginScript {
expect
?:
string
send
:
string
isRegex
?:
boolean
optional
?:
boolean
}
export
interface
SSHConnection
{
...
...
@@ -38,26 +39,36 @@ export class SSHSession extends BaseSession {
if
(
this
.
scripts
)
{
let
found
=
false
for
(
let
script
of
this
.
scripts
)
{
let
match
=
false
let
cmd
=
""
if
(
script
.
isRegex
)
{
let
re
=
new
RegExp
(
script
.
expect
,
"
g
"
);
let
re
=
new
RegExp
(
script
.
expect
,
"
g
"
)
if
(
dataString
.
match
(
re
))
{
let
cmd
=
dataString
.
replace
(
re
,
script
.
send
);
console
.
log
(
'
Executing script:
'
,
cmd
)
this
.
shell
.
write
(
cmd
+
'
\n
'
)
this
.
scripts
=
this
.
scripts
.
filter
(
x
=>
x
!==
script
)
cmd
=
dataString
.
replace
(
re
,
script
.
send
)
match
=
true
found
=
true
}
else
{
break
;
}
}
else
{
if
(
dataString
.
includes
(
script
.
expect
))
{
console
.
log
(
'
Executing script:
'
,
script
.
send
)
this
.
shell
.
write
(
script
.
send
+
'
\n
'
)
this
.
scripts
=
this
.
scripts
.
filter
(
x
=>
x
!==
script
)
cmd
=
script
.
send
match
=
true
found
=
true
}
else
{
}
}
if
(
match
)
{
console
.
log
(
'
Executing script: "
'
+
cmd
+
'
"
'
)
this
.
shell
.
write
(
cmd
+
'
\n
'
)
this
.
scripts
=
this
.
scripts
.
filter
(
x
=>
x
!==
script
)
}
else
{
if
(
script
.
optional
)
{
console
.
log
(
"
Skip optional script:
"
+
script
.
expect
)
found
=
true
this
.
scripts
=
this
.
scripts
.
filter
(
x
=>
x
!==
script
)
}
else
{
break
}
}
...
...
terminus-ssh/src/components/editConnectionModal.component.pug
浏览文件 @
9eee600c
...
...
@@ -95,6 +95,7 @@
th String to expect
th String to be sent
th Regex
th Optional
th Actions
tr(*ngFor='let script of connection.scripts')
td
...
...
@@ -111,6 +112,10 @@
toggle(
[(ngModel)]='script.isRegex',
)
td
toggle(
[(ngModel)]='script.optional',
)
td
.input-group.flex-nowrap
button.btn.btn-outline-info.ml-0((click)='moveScriptUp(script)')
...
...
@@ -136,6 +141,10 @@
toggle(
[(ngModel)]='newScript.isRegex',
)
td
toggle(
[(ngModel)]='newScript.optional',
)
td
.input-group.flex-nowrap
button.btn.btn-outline-info.ml-0((click)='addScript()')
...
...
terminus-ssh/src/components/editConnectionModal.component.ts
浏览文件 @
9eee600c
...
...
@@ -83,5 +83,7 @@ export class EditConnectionModalComponent {
clearScript
()
{
this
.
newScript
.
expect
=
''
this
.
newScript
.
send
=
''
this
.
newScript
.
isRegex
=
false
this
.
newScript
.
optional
=
false
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录