Sweave:在 Windows 7 中运行 bat 文件

Sweave:在 Windows 7 中运行 bat 文件

当我在 RStudio 中运行 RNW 文件时,编译工作正常。但是当我尝试通过 BAT 文件运行同一个 RNW 文件时,编译不起作用。我是 Win 7 用户,使用 MixTex...

实际上我的目标是使用像 TeXMaker 这样的 LaTeX 编辑器并通过 BAT 文件编译 RNW 文件。编译后我希望得到一个 PDF 文件...

在 Rstudio 上,我创建了一个名为“main.Rnw”的文件,然后我只需按下“编译 PDF”,便会得到一个漂亮的 PDF 输出。

但在 texmaker 上,我创建了相同的“main.Rnw”,但当我在同一目录中创建“run.bat”文件时,什么都不起作用。我的“run.bat”包含:

斯韦夫 main.Rnw

我找不到我的问题的解决方案...


我的“main.Rnw”代码:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{lipsum} % for lorem ipsum text
\begin{document}
\title{Test sweave}
\maketitle

%fake text
\lipsum[1]

%just a boxplot text
<<fig=TRUE>>=
test <- c(-10,8,6,4,2,0,2,4,6,8,10)
boxplot(test)
@

%fake text
\lipsum[2]

\end{document}

在此处输入图片描述

答案1

我认为 Windows 下的 R 中没有这样的东西Sweave.exe。只有R CMD Sweave

另一种方法是定义自定义命令,如下所示:http://yihui.name/knitr/demo/editors/(它代替knitr了 Sweave,但基本思想是一样的)

答案2

您是否确定 Sewave 在您的路径中?尝试Sweave main.Rnw在 Windows 命令行中运行。如果不行,您必须使用文件的完整路径,例如C:\Program Files\...\sweave.exe才能使其工作。

如果这不起作用,请尝试像这样调用批处理文件:

cmd /C " "batch_file" "arg1" "arg2" ... " 

由于某种原因,如果 UAC 关闭,则可能需要这样做。

相关内容