Рекурсивно выполнить latexmk -c для папок

Я хотел бы выполнить команду latexmk -c на все каталоги внутри каталога, например,

.

./test-dir

В результате удаляются все вспомогательные файлы, созданные для компиляции латекса.

Я пытался использовать find Команда, чтобы рассказать мне о каталогах, а затем выполнить команду, например так:

find -type d -exec latexmk -c \;

Но, к сожалению, эта команда приводит только к удалению вспомогательных файлов в каталоге, в котором я ее называю, а не в подкаталоге (test-dir в этом примере).

1 ответ

У меня была очень похожая проблема: я хотел рекурсивно конвертировать файлы .tex. Окончательное решение для меня было:

      find . -name '*.tex' -execdir latexmk -pdf {} \;

Секрет в том, чтобы использовать -execdir вместо того -execкоторый выполняет команду в каталоге, в котором был найден файл. Так что решение вашей проблемы наиболее вероятно:

      find -type d -execdir latexmk -c \;
Другие вопросы по тегам