R输出重定向:如何管理标准错误和标准输出
2020-01-10 本文已影响0人
生信摆渡
阻碍我科研的期末考终于结束啦~ ~ ~
之前整理过输出重定向的内容,但太过教科书化,这次简化一下。
另外,我的下面的代码的r
就是Rscript
的alias。OUT指的是非报错信息,ERR指的是报错信息。
先看一下测试脚本:
[wangjiahao@submit3 myscript]$ more test.R
getwd() # 其输出代表OUT
setwd("hahaha") # 其输出代表ERR
1 只重定向OUT——>
or 1>
[wangjiahao@submit3 myscript]$ r test.R > 1.log
Error in setwd("hahaha") : cannot change working directory
Execution halted
[wangjiahao@submit3 myscript]$ more 1.log
[1] "/sibcb1/bioinformatics/wangjiahao/code/myscript"
ERR输出到屏幕。
2 只重定向ERR——2>
[wangjiahao@submit3 myscript]$ r test.R 2> 2.log
[1] "/sibcb1/bioinformatics/wangjiahao/code/myscript"
[wangjiahao@submit3 myscript]$ more 2.log
Error in setwd("hahaha") : cannot change working directory
Execution halted
OUT输出到屏幕。
3 OUT和ERR重定向至一个文件——&>
[wangjiahao@submit3 myscript]$ r test.R &> 3.log
[wangjiahao@submit3 myscript]$ more 3.log
[1] "/sibcb1/bioinformatics/wangjiahao/code/myscript"
Error in setwd("hahaha") : cannot change working directory
Execution halted
因为都重定向到文件了,因此没有信息输出到屏幕。
4 OUT和ERR分别重定向至两个文件——&> out.log 2> err.log
[wangjiahao@submit3 myscript]$ r test.R &> 4.log 2> 5.log
[wangjiahao@submit3 myscript]$ more 4.log
[1] "/sibcb1/bioinformatics/wangjiahao/code/myscript"
[wangjiahao@submit3 myscript]$ more 5.log
Error in setwd("hahaha") : cannot change working directory
Execution halted
再一次整理这个内容是出于我想要达到个目的:
ERR单独输出到一个文件,同时把ERR和OUT一起重定向到另外一个文件。
我本以为上面第四种的代码可以达到这个效果,但结果并不是,仍然没有找到正确的代码。
有知道的小伙伴望告知啊~