Go 使用os.exec()执行3个或更多命令?
如何在Go(例如ls | grep | wc)中将3+个命令连接在一起?我试图修改这段用于piping 2命令的代码,但无法找到正确的方法Go 使用os.exec()执行3个或更多命令?,go,Go,如何在Go(例如ls | grep | wc)中将3+个命令连接在一起?我试图修改这段用于piping 2命令的代码,但无法找到正确的方法 package main import ( "os" "os/exec" ) func main() { c1 := exec.Command("ls") c2 := exec.Command("wc", "-l") c2.Stdin, _ = c1.StdoutPipe() c2.Stdout = os.
package main
import (
"os"
"os/exec"
)
func main() {
c1 := exec.Command("ls")
c2 := exec.Command("wc", "-l")
c2.Stdin, _ = c1.StdoutPipe()
c2.Stdout = os.Stdout
_ = c2.Start()
_ = c1.Run()
_ = c2.Wait()
}
可能存在的副本
package main
import (
"os"
"os/exec"
)
func main() {
c1 := exec.Command("ls")
c2 := exec.Command("grep", "-i", "o")
c3 := exec.Command("wc", "-l")
c2.Stdin, _ = c1.StdoutPipe()
c3.Stdin, _ = c2.StdoutPipe()
c3.Stdout = os.Stdout
_ = c3.Start()
_ = c2.Start()
_ = c1.Run()
_ = c2.Wait()
_ = c3.Wait()
}