我正在编写一个小项目来管理Cisco交换机,在我需要从Stout获取输出之前,一切都很好。这是我的密码。

func Return_current_user(conn *ssh.Client) {
    session, err := conn.NewSession()
    if err != nil {
        log.Fatal("Failed to create session %v: ", err)
    }
    
    sdtin, _ := session.StdinPipe()
    session.Stdout = os.Stdout
    session.Stdin = os.Stdin
    session.Shell()

    cmds := []string{
        "conf t",
        "show users",
        
    }
    for _, cmd := range cmds {
        fmt.Fprintf(sdtin, "%s\n", cmd)
    }
    session.Wait()
    session.Close()
}

以下是我在屏幕上的输出:

NAME     LINE         TIME         IDLE          PID COMMENT
admin    pts/0        Aug 16 06:13 00:02       29059 (192.168.57.1)
NAME     LINE         TIME         IDLE          PID COMMENT
admin    pts/0        Aug 16 06:13 00:02       29059 (192.168.57.1)

我只能显示远程命令的输出,但如何将这些输出保存在另一个变量中以供将来处理。非常感谢你。