dongyuruan2957
2018-01-18 17:21
浏览 63
已采纳

如何将os.Exec中的stdout传送到文件和终端?

How to pipe stdout for os.Exec to file but also to terminal?

I've try this:

go func() {
    scanner := bufio.NewScanner(stdout)
    writer := bufio.NewWriter(logFile)
    for scanner.Scan() {
        log.Debugln(scanner.Text())
        writer.WriteString(scanner.Text())
    }
    writer.Flush()
}()

But writer.WriteString(scanner.Text()) losts in file. How to got them back? Maybe there is some more elegant solution with pipes?

图片转代码服务由CSDN问答提供 功能建议

如何将os.Exec的stdout通过管道传输到文件,也可以传输到终端?

我已经尝试过:

  go func(){
扫描器:= bufio.NewScanner(stdout)
 writer  := bufio.NewWriter(logFile)
用于扫描器.Scan(){
 log.Debugln(scanner.Text())
 writer.WriteString(scanner.Text())
} 
 writer.Flush(  )
}()
   
 
 

但是 writer.WriteString(scanner.Text())丢失了 在文件中。 如何找回他们? 也许有一些更优雅的管道解决方案?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题