自动化RStudio处理RMarkdown?

时间:2014-10-09 19:48:07

标签: r knitr rstudio pandoc r-markdown

我有一个RMarkdown文件,用于生成一个不错的HTML报告。 问题是,我希望能够自动化它,以便它可以在无头服务器上运行。因此,没有人可以启动Rstudio并按下'knithtml'按钮,看起来Rstudio正在做很多额外的魔术,比如拥有它自己的pandoc版本,运行所有必要的命令,应用css样式等。

当我按下“knithtml”按钮时,如何通过运行R脚本来获取Rstudio生成的报告并生成相同的内容?

感谢。

2 个答案:

答案 0 :(得分:7)

尝试使用

rmarkdown::render("/PATH/TO/YOUR.Rmd", output_file="/PATH/TO/YOUR/OUTPUT.html")

代替。这假设您已经在无头框上加载了rmarkdown库。它将使用系统pandoc,但要确保它是1.12或更高。

这是knit2html所做的事情(通过" R Markdown"标签靠近"控制台"):

enter image description here

这是一个并排的。左边是单击按钮,右边是运行命令:

enter image description here

答案 1 :(得分:1)

我有同样的问题。经过大量的暴力破解后,使用以下命令行可以获得与RStudio相同的结果:

"path\to\Rscript.exe" -e "rmarkdown::find_pandoc(dir='path/to/RStudio/bin/pandoc'); rmarkdown::render('file.Rmd')"