如何在R中禁用“保存工作区图像?”提示?
当我退出交互式R shell时,每次都会显示一个恼人的提示:
> > 保存工作区图像? [y / n / c]是什么意思
我总是回答“不”,因为如果我想保存我的工作,我会在尝试退出之前这样做。
如何摆脱提示?
注意:请参阅?save.image
您可以在启动R时传递--no-save
命令行参数,也可以覆盖q
函数:
utils::assignInNamespace( "q", function(save = "no", status = 0, runLast = TRUE) { .Internal(quit(save, status, runLast)) }, "base" )
把上面的代码放在你的.Rprofile中,这样它就会在每个会话启动时运行。
还没find最简单的Linux解决scheme:)
在Ubuntu上添加以下行到你的~/.bashrc
:
alias R='R --no-save'
每次用R
启动R控制台时,都会传递--no-save
选项。
您可以使用Ctrl + D转义“ 保存工作区图像? ”提示。
因此,如果您在交互式R中执行了Ctrl + D两次,那么您将退出R而不保存您的工作空间。
(在Linux和OS X上testing)
如果您使用的是Rgui,右键单击您使用的图标来启动R,然后单击“属性”,并在启动R.的命令中添加–no-save。
(来自http://tolstoy.newcastle.edu.au/R/help/05/03/1115.html )
如果您使用的编辑器不是Rgui,则在启动R时必须将-no-save传递给R命令行
您可以轻松地将一个qq()
函数添加到.Rprofile文件
qq <- function(save="no") { q(save=save)}
我以为保存选项是可用的选项,但显然约书亚的答案是最好的。
如何通过inputq('no')
来避免提示
获得mreq和BondedDust提供的最好策略:
默认情况下,通过将以下行添加到〜/ .bashrc来保存:
alias R='R --no-save'
但给自己一个简单的方法来保存退出,通过添加到〜/ .Rprofile:
qs <- function(save="yes") { q(save=save)}
所以现在q()
退出而不保存(或提示),但qs()
将保存并退出(也没有提示)
覆盖保存 quit函数参数的默认选项
formals(quit)$save <- "no"
把这行放入.Rprofile
您可以为R命令创build一个别名:
使用bash : alias R='R --no-save'
使用csh: alias R 'R --no-save'
如果你觉得足够冒险的话,你也可以在/usr/bin/R
的末尾编辑startup
部分,即在exec调用中添加--no-save
。 但是,如果您需要保存工作空间,请记住save.image()
。