使用 go 调用 ssh 命令实现交互式的终端,调整终端的长宽

2020-08-09 11:42:07 +08:00
 dogye

调用 linux 自带的 ssh 命令实现交互的访问时,怎么调整长和宽

2376 次点击
所在节点    Go 编程语言
4 条回复
wildlife
2020-08-09 15:38:54 +08:00
var s *ssh.Session
s.WindowChange(resize.Rows, resize.Cols)
dogye
2020-08-09 16:22:37 +08:00
@wildlife 不用 session,直接使用 linux 自带的 ssh
使用 exec.Command,这种有没有办法实现呢
yuchenyang1994
2020-08-10 14:24:22 +08:00
我弄过,不太完美

cmd := exec.Command("ssh", "-t". "xxxx")
cmd.Stdout = os.Stdout
cmd.Stdin = os.Stdin
cmd.Stderr = os.Stderr
cmd.Run()
dogye
2020-08-11 11:36:35 +08:00
@yuchenyang1994 恩,我是按照这个实现的,不过 ssh -t 之后分配的 pty 没有办法调整窗口的大小

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/696819

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX