reprex忽略system()的输出

时间:2019-06-24 16:34:44

标签: r reprex

请考虑以下跨平台测试:

> system('echo hello')
hello

如果在RStudio中我复制字符串system('echo hello')并运行reprex::reprex(),则不会捕获输出:

enter image description here

有什么方法可以捕获输出?我在macOS上。

1 个答案:

答案 0 :(得分:1)

也许设置std_out_err = TRUE就可以了。从功能文档中:

  

std_out_err 逻辑。是否在reprex渲染过程中为发送到stdout和stderr的输出附加节。这可以是   如果reprex产生子进程,则必须显示输出   system()调用。请注意,这不能与输出正确地交错   从主要的R过程开始,也没有任何保证   来自标准输出和标准错误的时间顺序正确   订购。有关更多信息,请参见caller :: r()。进一步了解opt()。

system("echo hello")
x <- 1
x
#> [1] 1

标准输出和标准错误

hello

reprex package(v0.3.0)于2019-06-24创建