我們知道我們可以通過 awk {....} 將AWK或SED直接嵌入到BASH腳本中。我想要做類似R,使得一些如 mybashscript.sh 環R {....}將R代碼嵌入到BASH中unix腳本
不使用RSCRIPT myRscript.R
不必創建一個.R文件,並要求從猛砸.R文件有沒有辦法做到這一點。我到處搜索,但無法找到答案。請幫忙。
我們知道我們可以通過 awk {....} 將AWK或SED直接嵌入到BASH腳本中。我想要做類似R,使得一些如 mybashscript.sh 環R {....}將R代碼嵌入到BASH中unix腳本
不使用RSCRIPT myRscript.R
不必創建一個.R文件,並要求從猛砸.R文件有沒有辦法做到這一點。我到處搜索,但無法找到答案。請幫忙。
Bash能夠執行任意腳本語言的語句。它的格式爲VARIABLE_NAME=$(INTERPRETER -c "EMBEDDED CODE")
。在R INTERPRETER -c
的情況下將被替換爲R --arch i386 -q --slave -e
。 --arch
選項可以是任何支持的體系結構,例如i386或x64,-q
保持解釋器不打印啓動信息,並且--slave
保持輸出儘可能乾淨。
謝謝比爾。 –
您可以使用Rscript
命令,特別是關於您的問題,-e expr
構造,輕鬆地將R代碼直接嵌入到bash腳本中。檢查man Rscript
。
一個例子:
#!/bin/bash
echo "This is a bash script"
echo "Running R code..."
Rscript -e 'cat("hello world")'
感謝Micah,這是一個優雅的解決方案,我還發現我們可以使用分號嵌入多行代碼,例如Rscript -e'x = c(1,2,3,4);打印(X)」 –
還有德克Eddelbeutel的利特勒程序:http://dirk.eddelbuettel.com/code/ –