Go语言 - 在重定向输出导致EOF后打开管道到命令exec

时间:2018-06-10 07:08:43

标签: go

我正在尝试将进程的输出重定向到一个位置,然后打开进程的管道,读取其数据并将数据发送到预定义的Web套接字连接 - >但是我得到了EOF。

例如:

myCmd := exec.Command("bash", "-c", "some command")

myCmd.Stdout = os.Stdout

myCmd.Stderr = os.Stderr

appOut, _ := lsCmd.StdoutPipe()

然后我称之为常规:

data := make([]byte, 1000)

for {

    for {

        n, err := appOut.Read(data)

        if err == nil && n > 0 {
            myConnection.WriteMessage(websocket.TextMessage, data[0:n])
        }

      if err != nil {
        log.Printf("App exited. err: %s, Error ", err)
       }

    }
}

有人能告诉我我做错了什么吗? 我必须提一下,即使我改变了行的顺序(在重定向之前打开管道仍然会发生)

0 个答案:

没有答案