如何保存详细输出
How to save verbose output
我想将任何 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
appears to use cat
directed to stderr()
当 verbose = TRUE
.
?capture.output
帮助页面说:
Messages sent to stderr()
(including those from message
, warning
and stop
) are captured by type = "message"
. Note that this can be “unsafe” and should only be used with care.
所以,我相信如果你使用 capture.output(..., type = "message")
,你应该得到它。这很有可能也适用于 install.packages
。
我不确定为什么这被认为是不安全的或者您应该注意什么...
我想将任何 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
appears to use cat
directed to stderr()
当 verbose = TRUE
.
?capture.output
帮助页面说:
Messages sent to
stderr()
(including those frommessage
,warning
andstop
) are captured bytype = "message"
. Note that this can be “unsafe” and should only be used with care.
所以,我相信如果你使用 capture.output(..., type = "message")
,你应该得到它。这很有可能也适用于 install.packages
。
我不确定为什么这被认为是不安全的或者您应该注意什么...