谢谢mh-cbon。那把我推向正确的方向。
现在的代码看起来像这样,并且完全按照我的意愿去做。我还发现,当我使用
Run()而不是
Start()执行程序时,仅在命令完成后才继续执行。
cmd := exec.Command(command, args...)cmd.Dir = dirvar stdBuffer bytes.Buffermw := io.MultiWriter(os.Stdout, &stdBuffer)cmd.Stdout = mwcmd.Stderr = mw// Execute the commandif err := cmd.Run(); err != nil { log.Panic(err)}log.Println(stdBuffer.String())


