我正在尝试创建一个交互式 ssh 会话,我可以在其中发送 bash cmds 并取回结果。
以下作品:
var SSH2Promise = require('ssh2-promise');
var sshconfig = {
host: '192.168.1.142',
username: 'root',
password: 'pass'
}
var ssh = new SSH2Promise(sshconfig);
ssh.connect().then(() => {console.log("Connection established")})
但我真正想做的是:
var ssh_socket
ssh.shell().then((socket) => {
ssh_socket = socket
socket.on('data', (data) => {
console.log("ssh data: " + data)
})
socket.write("echo ssh shell connected\n")
})
ssh_socket.write("ls\n")
我对 ssh.shell 的调用什么也没显示,但我希望看到
"ssh data: ssh shell connected"
在控制台中。此外,在这个初始化之后,我希望能够发送许多命令,a la
ssh_socket.write("ls\n")
并查看他们的结果。