7

我希望将 stderr 和 stdout 消息重定向到输出文件。这是我尝试过的:

sink("outputFile" ,type = c("output", "message"))
print("using print")
cat("using cat\n")
message("using message")
warning("using warning")

当我运行此代码时,我仍然在我的 R 控制台中看到“使用消息”和“使用警告”,并且它没有被重定向。

有没有办法将 stdout 和 stderr 都重定向到文件?我使用这段代码将我的标准错误重定向到标准输出,但这并不是我想要的。

sink(stdout(), type = "message") # sink messages to stdout
4

1 回答 1

12

您需要分两步完成,使用如下内容:

zz <- file("test.txt", open = "wt")
sink(zz ,type = "output")
sink(zz, type = "message")
print("using print")
cat("using cat\n")
message("using message")
warning("using warning")
#and to close connections
sink()
sink()

在此处输入图像描述

于 2018-01-09T17:04:54.997 回答