r-如何保存详细输出



我想将任何R函数的详细输出保存到变量或文件中。

换句话说,whatever_R_function(abc, verbose=TRUE)的详细控制台输出应该保存在某个地方。

我尝试使用verbose.output <- capture.output(whatever_R_function(abc, verbose = TRUE)),但它不起作用,因为capture.output()只捕获输出的非详细部分。

两个例子:

install.packages('devtools', verbose=TRUE)

library(emayili)
smtp <- server(host = '...',
port = ...,
username = '...',
password = '...')
email <- envelope() %>%
from('...') %>%
to('...') %>%
bcc('...') %>%
reply('...') %>%
subject('...') %>%
html('...') %>%
attachment('...')
smtp(email, verbose = TRUE)

谢谢。

R 4.0.2-RStudio 1.3.1093-macOS 10.15.7

我没有深入了解install.packages代码,但smtp似乎在verbose = TRUE时使用了指向stderr()cat

?capture.output帮助页面显示:

发送到stderr()的消息(包括来自messagewarningstop的消息(由type = "message"捕获。请注意,这可能是"不安全的",只能小心使用。

所以,我相信如果你使用capture.output(..., type = "message"),你应该得到它。这很有可能也适用于install.packages

我不知道为什么这被认为是不安全的,也不知道你应该怎么处理…

相关内容

  • 没有找到相关文章

最新更新