javascript - 如何使用 ssh2-promise 制作交互式 shell
问题描述
我正在尝试创建一个交互式 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")
并查看他们的结果。
解决方案
推荐阅读
- python - specutils fit_generic_continuum 在 Spectrum1D 上使用时给出 TypeError
- google-cloud-platform - 如何更改谷歌云 SQL 的时区?
- c# - System.CommandLine 异常处理
- java - Springfox 在 Swagger 2.0 JSON 定义中创建 'ref' 类型而不是 java.io.File 对象
- python - 类型错误:/:“list”和“int”不支持的操作数类型
- python - python,beautifulsoup 标签似乎没有类型
- ios - 为视图控制器视图的边界原点设置动画时实际会发生什么?
- css - 如何将我的 React 汉堡菜单齐平放在网站的右上角?
- python - 如何在漂亮的汤标签列表中抓取内容?
- c - 有问题的scanf函数