我正在使用Rscript运行R脚本但是我的屏幕上输出了很多。我可以在静默模式下运行Rscript(意味着没有任何屏幕输出)?
答案 0 :(得分:12)
我想到了几种选择:
:使用sink()
将输出转移到文件,请参阅help(sink)
:Rscript myscript.R 2>&1 >/dev/null
编辑代码:)
使用我们的littler前端,默认情况下以--slave
模式运行:)
选项3是最复杂的,但可能是最好的。您可以使用日志方案,在“debug”或“verbose”中打印/显示,但不能。我经常这样做,基于给脚本的命令行切换。
答案 1 :(得分:6)
您可以使用
重定向输出Rscript myscript.R >& >/dev/null (linux)
或
Rscript myscript.R >$null (windows)
或直接使用R
:
R --quiet --vanilla < myscript.R
或
R CMD BATCH myscript.R
(最后一个版本将输出写入文件myscript.Rout
)
答案 2 :(得分:0)
还有一个选项:如果要将输出和错误消息分成不同的文件,这样可以更容易地识别问题,可以在shell上使用该命令:
Rscript myscript.R >a.Rout 2>a.Rerr
这会将程序输出写入a.Rout,并将错误消息写入a.Rerr。请注意,应事先删除a.Rout和a.Rerr的文件,以避免错误。