Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在文件中复制终端/提示符,如使用history+sink_R - Fatal编程技术网

如何在文件中复制终端/提示符,如使用history+sink

如何在文件中复制终端/提示符,如使用history+sink,r,R,我知道sink命令可以将stdout转移到文件,但基本上如果我在命令窗口中执行此操作: library(data.table) a = 1; b = 2; a [1] 1 文件中将只打印最后一行[1]1 有没有一种方法可以像使用sink一样将我的整个命令窗口打印到文件中 注意:我希望每次写东西时都这样做,以避免在R崩溃时丢失所有内容,这意味着我不希望必须键入printAllCommandToFile才能完成此操作您没有说明您所处的环境。在我的Mac电脑上,我可以键入cmd-A表示全选,键入cm

我知道sink命令可以将stdout转移到文件,但基本上如果我在命令窗口中执行此操作:

library(data.table)
a = 1;
b = 2;
a
[1] 1
文件中将只打印最后一行[1]1

有没有一种方法可以像使用sink一样将我的整个命令窗口打印到文件中


注意:我希望每次写东西时都这样做,以避免在R崩溃时丢失所有内容,这意味着我不希望必须键入printAllCommandToFile才能完成此操作

您没有说明您所处的环境。在我的Mac电脑上,我可以键入cmd-A表示全选,键入cmd-S表示保存到文件,并获得一个保存对话框。非常确定Windows和*Nix设备上也存在类似的东西。

从TeachingDemos软件包中选择txtStart怎么样?看

有时,当我向学生介绍R时,我推荐它是为了帮助他们记住他们做了什么以及结果是什么,这有点像你描述的情况


根据我在Linux机器上的经验,即使在不调用txtStop的情况下关闭R,输出也会保存到会话开始时指定的任何文本文件中

我认为.rhistore文件不是您想要的?历史记录仅显示命令,我希望命令+结果在我的示例历史记录中打印ligns 1到4,但不是最后一行…FWIW如果打开.history文件并重新执行一个行块,您将重新创建完整的终端输出。然而,我不确定你害怕失去什么。除非执行save.image,否则对象本身不是保存的ascii文本行,而是控制台日志中的所有内容,而不是对象。@卡尔:我在几个项目上工作,有时无法重新创建我的结果,因为我忘记了对某个内容进行子集划分,或者因为数据确实发生了更改。。。有很多数据处理还没有准备好生产,所以我不希望出现swave或任何像这样复杂的事情。我知道你可能会觉得很奇怪,但我意识到,如果我能在命令窗口命令+显示输出中捕捉我输入的内容,这将大大简化记忆。希望它更清楚一点。足够公平。。。我在WinXP上工作,并使用Rterm作为终端,没有CTRL-A行为,Rterm使用的是cmd.exe,它很蹩脚,但有一个我不想丢失的功能:CRTL-R*nix功能,用于查找以前的命令。无论如何,这不是我想要的,正如我所说的,我希望终端上显示的任何命令和输出结果都打印到文件中,它的工作方式听起来像是你需要编写一个交互式bash脚本,为你发送和获取一切。这正是我想要的,很棒的朋友!注:不知道为什么它会将promtp从R改为txtR,但我真的不知道care@statquant,我认为这只是提醒您当前正在记录输出。请记住,注释是剥离出来的,因此如果您想记录那些我觉得有点不方便的注释,则需要使用txtComment。它被描述为sink和history的组合:,当然,由于它使用sink,它将实时记录,因此如果它崩溃或关闭R会话,文件将保持不变…对于注释,确定,是的,它应该是一个选项,就像修改txtStartcode中的提示一样,也应该是一个选项。。。但是嘿。。。已经很好了:@statquant也在堆栈溢出上,所以您可以随时向他提出一些建议: