为了保持 .tex 文件所在文件夹的整洁,我成功地采用了其他帖子中建议的策略(例如这里 或者这里)、设置-output-directory=build
并在构建高级选项中-aux-directory=build
添加./build
日志文件和pdf文件的附加搜索路径。
这是可行的,尽管所有文件(包括 pdf)现在都在build
子文件夹中,但我希望将 pdf 放在 .tex 文件所在的同一文件夹中。
为了实现这个目的,我创建了一个简单的批处理文件,copy.bat
并将其放在 .tex 文件所在的同一文件夹中。其内容如下:
for /R "%cd%\build" %%f in (*.pdf) do copy "%%~f" ".\"
它的作用是将所有 pdf 文件从 build 子文件夹复制到当前文件夹。如果从终端运行,它会按预期工作。
现在,我想从我正在处理的 tex 文件中运行 .bat 文件。我已更改 PdfLatex 命令选项,现在它是:
pdflatex.exe -synctex=1 -interaction=nonstopmode --shell-escape -output-directory=build -aux-directory=build %.tex
然后我将其包含\immediate\write18{"./copy.bat"}
在我的 tex 文件中,但尝试编译时出现错误(pdf 已损坏)。我真的不明白为什么。作为一个附带问题,你会使用不同的策略将 pdf 复制到 tex 目录中吗?