The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
dogye

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

  •  
  •   dogye · Aug 9, 2020 · 3027 views
    This topic created in 2193 days ago, the information mentioned may be changed or developed.

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

    4 replies    2020-08-11 11:36:35 +08:00
    wildlife
        1
    wildlife  
       Aug 9, 2020
    var s *ssh.Session
    s.WindowChange(resize.Rows, resize.Cols)
    dogye
        2
    dogye  
    OP
       Aug 9, 2020
    @wildlife 不用 session,直接使用 linux 自带的 ssh
    使用 exec.Command,这种有没有办法实现呢
    yuchenyang1994
        3
    yuchenyang1994  
       Aug 10, 2020
    我弄过,不太完美

    cmd := exec.Command("ssh", "-t". "xxxx")
    cmd.Stdout = os.Stdout
    cmd.Stdin = os.Stdin
    cmd.Stderr = os.Stderr
    cmd.Run()
    dogye
        4
    dogye  
    OP
       Aug 11, 2020
    @yuchenyang1994 恩,我是按照这个实现的,不过 ssh -t 之后分配的 pty 没有办法调整窗口的大小
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   946 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 22:17 · PVG 06:17 · LAX 15:17 · JFK 18:17
    ♥ Do have faith in what you're doing.