【发布时间】:2018-12-28 09:10:11
【问题描述】:
我必须在节点 js 的同一个 ssh shell 中执行多个命令。我为此使用 simple-ssh。但是由于 sudo 的情况,执行停止了。
下面的代码有四个我需要在同一个 ssh 中执行的命令。执行命令将用户切换到 root 后停止。我无法在单独的 ssh 中执行第三个命令,因为命令 cd 和 switch user 不会在新的 ssh 中执行。
var cmd = 'cd /home/sample/test/core/build/bin/' + "\n" + 'sudo su root'
+ "\n" + 'su test' + "\n" + './app'
ssh.exec(cmd, {
pty: true,
out: function (stdout) {
console.log(stdout);
},
err: function (stdout) {
console.log(stdout);
}
}).start();
我想用同一个 ssh 执行四个命令。有没有办法可以实现?我也很乐意从 simple-ssh 迁移到任何其他可以做到这一点的 npm。
【问题讨论】:
标签: javascript node.js ssh