1

R 中是否有类似Common Lisp 函数 DRIBBLEUnix 命令 tee的东西?

具体来说,我希望我键入 的所有内容以及 R 打印回给我的所有内容都附加到一个文件中(tee仅捕获标准输出;我想要所有内容:错误、警告、打印、猫、我的输入)。

我发现了一条关于该主题的10 年前的消息,它提供了一个弱版本(它没有捕获来自 cat/print 的输出)。

标准函数sink捕获(不重复)R 的输出;它没有捕获我的输入。

有没有更好的办法?

4

2 回答 2

3

查看txtStartTeachingDemos 包中的函数(和相关函数)。我认为除了捕获错误之外,它可以完成您想要的一切(并且TaskCallback需要更新 R 中的系统才能发生这种情况)。

另一种选择是在另一个环境中运行 R,例如 ESS(在 Emacs 内部)(还有其他环境,但我对它们不太熟悉)。然后所有内容都在编辑器/缓冲区中捕获,并可以保存到文件中。

请注意,该sink函数确实有一个split参数,可以tee在屏幕上显示输出并将其复制到文件中,但它仍然只执行输出,而不是输入命令。

于 2012-10-05T16:45:14.627 回答
0

您可能想要sink()- 参见help(sink)示例。

于 2012-10-05T13:53:06.303 回答