Я не хочу файлы.aux, .log и.synctex.gz при использовании pdflatex

Я просто хочу иметь .tex файл, с которым я компилирую pdflatex и в конечном итоге с .pdf файл. Я не хочу все остальные .aux, .log а также .synctex.gz файлы. pdflatex кажется, нет аргументов для этого.

10 ответов

latexmk -c удалит ненужные файлы. latexmk это отличный способ управлять компиляцией тоже!

Я всегда строю свои PDF-файлы так:

pdflatex -aux-directory=/some/temp/dir <additional options>

Таким образом, я не вижу все дополнительные файлы. Эти файлы не следует удалять, так как они важны для перекрестных ссылок, библиографии, оглавления и т. Д. pdflatex несколько раз, а затем удалить файлы занимает слишком много времени.

-aux-directory к сожалению, не существует в Linux-версии pdflatex. Проверено на Ubuntu Lucid.

Для людей на Linux эквивалент -aux-directory по-видимому -output-directoryк сожалению, это не очень хорошо \include{...} (включенные файлы ' .aux файлы все еще сбрасываются в текущем каталоге).

Смотрите также: справочная страница.

Если у кого-то, кто использует TeXnicCenter, есть такое же желание получить только файл *.pdf для данного файла *.tex (без файлов *.aux, *.bbl, *.blg и *.log), вот быстрое решение: выберите из меню: Build | Определите выходные профили, скопируйте профиль "LaTeX => PDF" в новый профиль "LaTeX => PDF ONLY", затем на вкладке Постпроцессор создайте четыре новых постпроцессора:

Имя: удалить *.XXX

Исполняемый файл: "C:\WINDOWS\system32\cmd.exe"

Аргументы: /C del "%bm.XXX"

Замените XXX на aux, bbl, blg, log, соответственно.

Для MikTeX:

texify -cp  file.tex

После этого он будет запускать pdflatex столько раз, сколько необходимо и будет очищать временные файлы. Очень полезно.

Хорошо разработанный скрипт-обертка, кажется, лучший ответ. Что-то вроде этого, которое я протестировал на Ubuntu с использованием texlive-latex (pdftex 1.40.10):

#!/bin/bash
TMPDIR=$(mktemp -d)
trap "rm -fr $TMPDIR; exit 255;" SIGINT SIGTERM SIGKILL

/usr/bin/latex -interaction=batchmode -output-directory=$TMPDIR $1
cp $TMPDIR/$1.dvi .
rm -fr $TMPDIR

IIRC \nofiles в вашем файле подавляет .aux выход.

Как вы создаете / редактируете документ LaTex? Если вы используете Sublime Text 2, вы можете отредактировать файл проекта, чтобы запретить открытие типов файлов по вашему выбору. Они по-прежнему будут создаваться при компиляции, но не будут загружаться в ваш проект, делая их невидимыми.

Напишите оболочку shell-скрипта, которая удаляет файлы:

#!/bin/sh
pdflatex "$@" && rm -f *.aux *.log *.synctex.gz

Бонус-задание: изменение скрипта для удаления только тех файлов, которые действительно были созданы pdflatex.

Использование pdflatex с -enable-write18 вариант и напишите в конце вашего файла LaTeX

\write18{del *.aux}
\write18{del *.log}
\write18{del *.gz}

или больше цены

\write18{del \jobname.aux}
\write18{del \jobname.log}
\write18{del \jobname.synctex.gz}
\write18{del \jobname.toc}
\write18{del \jobname.loc}

del это DOS-функция использование rm для UNIX.

Другие вопросы по тегам