我正在尝试设置一个运行批处理文件的任务,该文件运行.rmd
文件,每天应该编织我一个可爱的.html
文件。
如果我手动运行批处理文件,一切正常。但是,当我通过任务计划程序运行它时,我从命令提示符处得到以下错误:
Error in file(con, "w") : cannot open the connection
Calls: <Anonymous> -> knit -> writeLines -> file
In addition: Warning message:
In file<con, "w") : cannot open file 'residual_v1.md" : Permission denied
Execution halted
同一个用户被列为&#34;作者&#34;在任务调度程序中,作为用户打开开始菜单时。
批处理文件代码:
"C:\R\R-3.0.3\bin\x64\Rscript.exe" -e "library(knitr,dplyr); knitr::knit2html('C:/R/Rapporter/residual_model/Residual_v1.Rmd')"
我不知道该怎么做。
答案 0 :(得分:5)
看起来你在R的工作目录中没有写权限。我建议你在运行knit2html()
之前设置工作目录,例如
setwd('C:/R/Rapporter/residual_model/')
knitr::knit2html('Residual_v1.Rmd')
即
"C:\R\R-3.0.3\bin\x64\Rscript.exe" -e "setwd('C:/R/Rapporter/residual_model/'); knitr::knit2html('Residual_v1.Rmd')"
或您拥有写入权限的任何其他输出目录:
setwd('any/output/directory/you/want')
knitr::knit2html('C:/R/Rapporter/residual_model/Residual_v1.Rmd')