diff --git a/packages/plugins/plugin-lib/src/ssh/ssh-access.ts b/packages/plugins/plugin-lib/src/ssh/ssh-access.ts index 984a435c..15bd6fa8 100644 --- a/packages/plugins/plugin-lib/src/ssh/ssh-access.ts +++ b/packages/plugins/plugin-lib/src/ssh/ssh-access.ts @@ -136,9 +136,10 @@ export class SshAccess extends BaseAccess { const { SshClient } = await import("./ssh.js"); const client = new SshClient(this.ctx.logger); + const script = ["echo hello", "exit"]; await client.exec({ connectConf: this, - script: "echo hello", + script: script, }); return "ok"; } diff --git a/packages/plugins/plugin-lib/src/ssh/ssh.ts b/packages/plugins/plugin-lib/src/ssh/ssh.ts index d0aa74e3..d148d8f1 100644 --- a/packages/plugins/plugin-lib/src/ssh/ssh.ts +++ b/packages/plugins/plugin-lib/src/ssh/ssh.ts @@ -469,7 +469,8 @@ export class SshClient { async isCmd(conn: AsyncSsh2Client) { const spec = await conn.exec("echo %COMSPEC% "); - if (spec.toString().trim() === "%COMSPEC%") { + const ret = spec.toString().trim(); + if (ret.includes("%COMSPEC%") && !ret.includes("echo %COMSPEC%")) { return false; } else { return true;