我想在所有 .tex文件上运行pdflatex.exe
,其名称以" Chap03 _"开头。我怎么能这样做?
注意:
所有.tex文件总是在同一个特定文件夹中,所以我认为可以使用它。
由于文件夹相同,使用名称的开头很重要!
在某些情况下,我还想对所述文件使用lualatex.exe
。
非常重要的是,一次只能获取一个进程,然后是下一个进程。也许这有点奇怪,但我对此没有任何经验。
这些文件都是UTF-8编码的。
我认为这会导致批处理脚本?我的意思是这将是伟大的,只需双击一些东西然后让魔术发生。 :)
答案 0 :(得分:0)
您可以通过许多编程语言通过极少数代码来解决这个问题。要点是列出目录中的所有文件,请以" Chap03 _"开头的所有文件减少此列表。并以" .tex"结尾。然后在每个文件上调用pdflatex。例如,这是在Python 2.7脚本中完成的:
import os
method = raw_input('Which method do you desire pdflatex/lualatex/xelatex?')
files = os.listdir(os.getcwd())
def fun(i):
"""If i begins with Chap03_ and ends with .tex i is returned else
None is retruned"""
loc1 = i.find('Chap03_')
loc2 = i.find('.tex')
if loc1 == 0 and (len(i)-len('.tex')) == loc2:
return(i)
texFiles = [fun(i) for i in files if fun(i) is not None]
for i in texFiles:
os.system(method + ' ' +i)
脚本将搜索放置它的文件夹,或其parrent程序从哪里调用。换句话说,只需将其放在相关文件夹中,然后在需要编译所有pdf时单击它。命令提示符将询问您使用哪种方法(pdflatex / lualatex / xelatex)。如果您不使用Python我建议安装Anaconda2(Python 2.7),安装后您将能够运行此脚本。