2017-07-28 74 views
0

我知道以下方法可以在Linux終端中將Rnw文件編譯爲pdf,但是Rstudio僅需要一次單擊即可完成,但實際上只有太多行。有人可以提供一個linux shell函數來處理文件名作爲變量嗎?舉例來說,我試用了1美元,但是對於Rscript和Rnw文件名有「」和「',而外殼無法識別出什麼是1美元。knitr在linux中的命令行

Rscript -e "library(knitr); knit('my_sweave_file.Rnw')" 
    pdflatex my_sweave_file.tex 

回答

1

你可以使用這樣的東西。保存爲文件並確保它可以運行(即使用chmod +x nameofscript)。

#!/bin/bash 

# Set the first argument as variable file  
file=$1 

filename=$(basename "$file") 
extension="${filename##*.}" 
filename="${filename%.*}" 

Rscript -e "library(knitr); knit('$file')" ; pdflatex $filename.tex