我正在使用 glossaries-extra 包来构建我的词汇表,并使用 R Markdown 编译 pdf。我想删除此包在我的主工作目录中创建的辅助文件 (*.acn;*.glo-abr;*.nlo;*.xdy)。
答案1
为什么不使用 Makefile?
.PHONY: all clean
all:
pdflatex --interaction=nonstopmode --synctex=-1 --shell-escape main.tex
clean:
--@rm -rf *-gnuplottex-fig*.* *.gnuploterrors
--@rm -rf *.aux *.log *.lof *.bak *.loa *.log *.lot *.bbl *.blg *.dvi *.out *.brf
--@rm -rf *.thm *.toc *.idx *.ilg *.ind *eps-converted-to.pdf *.gnuplot *.tps
--@rm -rf *-gnuplottex-fig*.* *temp*.dat *.nav *.snm *.vrb *.lol *.tmp
--@rm -rf gnuplottex *.synctex *.synctex.gz *.xwm
只需运行make
,您就会获得 PDF,并make clean
可以整理工作目录。此外,如果您有一个子文件夹,例如包含独立的 TikZ 绘图或图,则可以使用以下 Makefile 递归子目录:
SUBDIRS := $(sort $(dir $(wildcard tikz/*/*)))
.PHONY: all $(SUBDIRS) clean
all: $(SUBDIRS)
pdflatex --interaction=nonstopmode --synctex=-1 --shell-escape main.tex
$(SUBDIRS): ; $(MAKE) -C $@ $(MAKECMDGOALS)
clean: $(SUBDIRS)
--@rm -rf *-gnuplottex-fig*.* *.gnuploterrors
--@rm -rf *.aux *.log *.lof *.bak *.loa *.log *.lot *.bbl *.blg *.dvi *.out *.brf
--@rm -rf *.thm *.toc *.idx *.ilg *.ind *eps-converted-to.pdf *.gnuplot *.tps
--@rm -rf *-gnuplottex-fig*.* *temp*.dat *.nav *.snm *.vrb *.lol *.tmp
--@rm -rf gnuplottex *.synctex *.synctex.gz *.xwm
这首先进入 tikz/ 文件夹中的每个子文件夹,执行在该文件夹中找到的 Makefile,然后返回主文件夹并构建主文档。清理时,当然也会清理子目录。