猿问

如何在 Golang 中将 fmt.Print 和 log.Print 保存到同一个文件中

在 shell 中,我使用go run file > output,但只有 fmt.Print 保存到输出中。所有的log.Print仍然输出到屏幕!在网上查了一下,发现可以设置log的输出目录,但是如何将log和fmt保存在同一个文件中呢?


holdtom
浏览 373回答 1
1回答

狐的传说

记录器写入 STDERR,而 fmt.PrintXXX 函数写入 STDOUT。你有两个选择:1) 将 STDERR 捕获到文件中。像 shell 一样的 Bash 使用:go run file > output 2>&12) 将记录器的输出设置为os.Stdout然后你像往常一样运行go run file > output,记录器和 fmt 都去同一个地方。log.SetOutput(os.StdOut)
随时随地看视频慕课网APP

相关分类

Go
我要回答