我正在寻找写入标准错误,写入标准输出,这有效:
fmt.Println(...)
还有比这更好的写入 stderr 的方法吗:
_, err := fmt.Fprintln(os.Stderr, "This is an error message")
if err != nil {
panic(err) // Handle the error appropriately in your application
}
似乎很奇怪,没有简单的 api 来实现这个哈哈
应用程序通常会忽略从
fmt.Fprintln(os.Stderr, ...)
返回的错误,就像应用程序通常会忽略从 fmt.Println(...)
返回的错误一样。
如果
os.Stderr
是一个管道并且管道已关闭,则调用 fmt.Fprintln(os.Stderr, ...)
将导致应用程序退出并发出信号 SIGPIPE。