Golang 中国
2 回复
haha03942008
#1 haha03942008 • 2017-11-02 15:56

自问自答吧,用”bufio”包进行获取
但是如果循环获取会阻塞住,不知道为什么

reader := bufio.NewReader(stderr)
    buf := make([]byte, 1024)
    //进行输入流读取
    time.Sleep(1 * time.Second)
    _, err = reader.Read(buf)
    if err != nil {
        io.WriteString(v, "read stream error")
        log.Fatal("strout pipe error")
    }

因为我的命令输出在一秒内肯定能响应完全,就sleep一秒,然后获取

CodyGuo
#2 CodyGuo • 2017-12-09 20:40
cmd := exec.Command("ping", "-t", "www.baidu.com")
cmd.Stderr = os.Stderr
cmd.Run()
需要 登录 后方可回复, 如果你还没有账号你可以 注册 一个帐号。