exams:::exams2pdf 抛出与 sh

问题描述 投票:0回答:1

当我尝试使用考试包中的

exams2pdf
(例如
exams2pdf("boxplots.Rmd")
)时,出现以下错误:

sh: line 1: : command not found

我可以使用

system()
在 R 中执行常用的终端命令,例如:

system("ls # list files and folders in WD")

我错过了什么?为什么

exams2pdf()
不能正确使用 shell(我猜是 bash)?我正在使用Linux。

提前谢谢您。

r sh r-exams
1个回答
0
投票

问题根源:

exams2pdf()
函数尝试在PDF查看器中打开它生成的PDF文件。我怀疑 R 为您的 PDF 查看器找到了错误或不存在的路径。

解决方法: 作为一种快速解决方法,您可以告诉

exams2pdf()
将 PDF 文件写入您可以自己打开的目录。例如,要在当前工作目录中创建文件,请使用

 exams2pdf("boxplots.Rmd", dir = ".")

然后你可以自己打开

plain1.pdf

调试: 使用上面的代码创建

plain1.pdf
文件后,您可以尝试从 R 打开它,就像 R/exams 一样。在 Linux 上,需要执行以下步骤:

out <- "plain1.pdf"                      ## PDF file in current directory
vwr <- getOption("pdfviewer")            ## path to your systems's PDF viewer
cmd <- paste(shQuote(vwr), shQuote(out)) ## PDF viewer command to be executed
system(cmd, wait = FALSE)                ## run PDF viewer command

在我的系统上,查看器路径

vwr
和生成的引用命令
cmd
如下所示:

writeLines(c(vwr, cmd))
## /usr/bin/xpdf
## '/usr/bin/xpdf' 'plain1.pdf'

我怀疑您的 PDF 查看器配置错误......

© www.soinside.com 2019 - 2024. All rights reserved.