我想做的是:cmd := exec.Command(someCommand)cmd.Stdout = os.Stdoutcmd.Run()save(os.Stdout)因为这个命令需要很长时间执行,我想立即在屏幕上打印结果。所以我不想用result := cmd.Output() fmt.Print(result)保存输出然后打印
1 回答
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
美国MultiWriter:
cmd := exec.Command(someCommand)
var buf bytes.Buffer
cmd.Stdout = io.MultiWriter(os.Stdout, &buf)
cmd.Run()
save(buf.Bytes()) // Bytes() returns a []byte containing the stdout from the commmand.
- 1 回答
- 0 关注
- 297 浏览
添加回答
举报
0/150
提交
取消