LaTex是一个专门用于排版文章及数学公式的排版系统。在实际编写过程中,除了产生保存代码的“*.tex文件”和最终结果“*.pdf文件”,还保留着诸如“*.aux”、“*.log”、“*.synctex.gz”等辅助文件。使用参考文件时,还会有“*.blg”等日志文件。完成编写任务之后,这些辅助文件和日志文件都是可以删除掉的,让文件目录整洁一些。如果需要二次编写,重新生成辅助文件也花不了多少时间。而且,一旦运行出错,错误信息会写入辅助文件当中,下次编译的时候,还是会读取这些辅助文件中错误的信息,删除再重新生成辅助文件是LaTex编写过程中一个很好用的debug方法。
  然而,删除辅助文件却是一件烦心事。
  初级菜鸟:鼠标点选辅助文件,一个一个删除。
  老菜鸟:TexWorks等编辑器自带删除辅助文件功能,但是“*.synctex.gz”等文件还是要手动删除。
  Tex老鸟:借助.bat批处理文件一键删除。
  接下来介绍我用.bat批处理文件(类似于linux系统的shell脚本,.bat脚本是dos下的批处理文件,包含一条或多条命令。双击打开时,Windows系统调用cmd.exe按照该文件中各个命令出现的顺序来逐个运行)一键删除LaTex辅助文件的方法,思路是识别辅助文件后缀名并将其删除,操作方法是双击“latexcleaner.bat”文件。

bat脚本

@echo off
title LaTex Cleaner
del /a /f /q /s  "*.aux" "*.log" "*.synctex.gz"
pause

代码解释

@echo off: echo off表示在此命令后所有运行的命令都不显示命令行自身,@进一步不显示“echo off”这一条命令
title: 更改当前窗体标题
del: 根据参数和路径删除文件
/a /f 是强制删除所有属性的文件
/q是无需确认直接删除
/s是可以删除子文件夹中的文件
“*.aux”表示删除后缀名为aux的辅助文件,其它同理
pause: 暂停命令的执行,并在屏幕上显示Press any key to continue…
(此命令是为了确认删除了哪些辅助文件,去掉pause命令的话,执行完毕删除操作就会自动关闭窗口)

操作方法

  将以上4条命令粘贴到记事本中并保存,修改文件名为“latexcleaner.bat”,关键在于“*.bat”的后缀,文件名称可自拟。将“latexcleaner.bat”摆在LaTex文件所在文件夹,双击即可自动删除辅助文件。我习惯在桌面编辑LaTex文件,所以将文件“latexcleaner.bat”也摆在桌面。

参考资料


本博客所有文章除特别声明外,均采用 CC BY-SA 3.0协议 。转载请注明出处!

我为什么要写博客 上一篇
天线设计 下一篇