Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用golang';s os/exec,如何将标准输出从一个进程复制到另一个进程的标准输出?_Go_Io_Stream - Fatal编程技术网

使用golang';s os/exec,如何将标准输出从一个进程复制到另一个进程的标准输出?

使用golang';s os/exec,如何将标准输出从一个进程复制到另一个进程的标准输出?,go,io,stream,Go,Io,Stream,我想使用go模拟bash管道。下面是bash中的一个虚拟示例: $ ls | wc 42 48 807 我如何在围棋中模仿它?有没有一种方法可以用streams实现这一点?。您可以将第二个命令的Stdin属性从第一个命令重新分配给stdout编写器 ls := exec.Command("ls") wc := exec.Command("wc") lsOut, _ := ls.StdoutPipe() ls.Start()

我想使用go模拟bash管道。下面是bash中的一个虚拟示例:

$ ls | wc 
      42      48     807
我如何在围棋中模仿它?有没有一种方法可以用streams实现这一点?

。您可以将第二个命令的
Stdin
属性从第一个命令重新分配给
stdout
编写器

    ls := exec.Command("ls")
    wc := exec.Command("wc")
    lsOut, _ := ls.StdoutPipe()
    ls.Start()
    wc.Stdin = lsOut

    o, _ := wc.Output()
    fmt.Println(string(o))
副本