我的示例 tex 文件如下
\documentclass[12pt]{article}
\begin{document}
\immediate\openout5=sample
\immediate\write5{ \noexpand\documentstyle[12pt]{article} }
\immediate\write5{ \noexpand\begin{document} }
\immediate\write5{Hello Hello}
\immediate\write5{ \noexpand\end{document} }
\immediate\closeout5
\end{document}
为什么我没有看到当前目录中生成任何 sample.tex 或 sample.aux 文件?
答案1
如果你将文件命名为sample.tex
,则pdflatex
在其上运行将覆盖该文件。事实上,运行后
pdflatex sample
在该代码的工作目录中sample.tex
,该目录将包含
jagnan > ls
sample.aux sample.log sample.tex
并将cat sample.tex
显示
\documentstyle [12pt]{article}
\begin {document}
Hello Hello
\end {document}
但是,根据您的操作系统,覆盖文件的结果可能会不同,甚至可能导致运行不成功。
如果我将您的代码保存在名称下jagnan.tex
,则运行pdflatex jagnan
目录将填充
jagnan > ls
jagnan.aux jagnan.log jagnan.tex sample.tex
答案2
当我使用参数 -output-directory 从 shell 运行 pdflatex 时,它会在指定目录中生成所有文件 - .log .aux 以及 sample.tex。
pdflatex -output-directory . experiment003.tex
这是我在 TexWorks 中设置配置的步骤:
- 转到“编辑”->“首选项”->“排版”选项卡
- 在处理工具部分单击“+”以添加新工具
- 将此工具命名为“mytex”
- 选择“pdflatex.exe”(来自正确的目录)作为要使用的程序
- 添加 '-output-directory=.' 和 '$fullname' 作为参数
- 您也可以选择更改其在下拉菜单中的位置或将其设置为默认程序
如果需要更改现有命令,则需要检查有关每个所用程序的命令行参数的文档并进行适当设置。
感谢 David 和 egreg 的所有帮助和指点。