我使用
pdflatex -output-dir=/foo
我的一个宏在工作目录中生成临时文件。
\immediate\write18{bash -c "some-command >outputfile"}
我希望它将它们保存到输出目录。
我如何才能让我的宏知道给予-output-dir
命令行选项的值?
答案1
问题是,在 LaTeX 中,输出目录也是输入目录(例如 aux-file、toc 等),不仅对于 pdflatex 如此,对于其他工具也是如此。根据我的经验,从长远来看,最好不要使用--output-dir
。总有一个工具找不到其输入文件。在 git 中,我只是使用一个合理的.gitignore
文件来避免提交辅助文件。
除此之外:使用 luatex,您可以访问命令行参数,如以下答案所述:https://tex.stackexchange.com/a/18813/2388。
使用 pdflatex,您可以--output-dir
借助 currfile 包检索 texlive 中的路径。它需要 -option --recorder
。
\documentclass{article}
\usepackage[abspath]{currfile}
\begin{document}
\getabspath{test-utf8.log}
\theabsdir
\end{document}