如何使用命令行中的knitr与Rscript和命令行参数?

msa*_*kya 9 r knitr

我有一个R代码my_code.R,它接受一个参数文件test.txt.我可以用:

   Rscript -e my_code.R test.txt 
Run Code Online (Sandbox Code Playgroud)

并运行脚本,但我想使用knitR中的stitch()生成pdf/tex中的脚本报告.

我已经控制了堆栈溢出并使用了以下建议,但没有得到任何结果:

   Rscript -e "library(knitr);knit('my_code.R "-args arg1=test.txt" ')"
   Rscript -e "knitr::stitch('my_code.R "-args arg1=test.txt"')"
Run Code Online (Sandbox Code Playgroud)

这是关于我想要什么(链接)的另一个类似的讨论,但有添加参数的选项.

Yih*_*Xie 7

我不明白为什么这是不可能的.这是my_code.R:

commandArgs(TRUE)
Run Code Online (Sandbox Code Playgroud)

而我只是跑

Rscript -e "library(knitr); stitch('my_code.R')" --args foo bar whatever=blabla
Run Code Online (Sandbox Code Playgroud)

我得到了输出

knitr stitch()输出

您似乎没有在原始尝试中正确使用双引号.它应该是

Rscript -e "library(knitr); stitch('my_code.R')" --args arg1=test.txt
Run Code Online (Sandbox Code Playgroud)