2014-03-28 31 views
0

我想知道是否可以傳遞一個字符串作爲命令行參數在R中執行?R中的命令行參數

我已經嘗試它,我認爲它是基於空間的解析,無論引號。

./R_Script.r abc.bed def.bed "cat bedgraph 1,2" 
+1

您可以看看[這個答案](http://stackoverflow.com/questions/2151212/how-can-i-read-command-line-parameters-from-an-r-script) –

回答

3

它不應該基於空間解析。我也不確定你爲什麼試圖直接執行你的R腳本文件,而不是使用Rscript並傳遞腳本文件。如果您R_Script.r文件只包含一個行:commandArgs(),然後運行該行:

Rscript --vanilla R_Script.r "first second" 

應該讓你:

[1] "/usr/local/lib/R/bin/exec/R" "--slave" 
[3] "--no-restore"    "--vanilla" 
[5] "--file=R_Script.r"   "--args" 
[7] "first second" 

正如你可以看到,該列表的第七元素是first second,所以它不解析空間。

+0

謝謝,Rscript是一種比直接執行腳本更好的方法。 –

+1

您可能想使用'commandArgs(trailingOnly = TRUE)' –