2010-01-09 90 views
9

我有一個LaTeX文件,'myfile.tex'說,在代碼中間的某個時候,必須輸入LaTeX宏 的ASCII文件,'macrofile.tex,say ,通過'\ input {macrofile}'命令。實際上,有不止一個「宏觀文件」,所以每次我必須編輯'myfile'並更改'宏觀文件'的名稱。我可以通過使用\ typein命令避免編輯部分 ,但是,我仍然必須從鍵盤輸入名稱。有沒有辦法從命令行執行該操作?因此,要總結,「myfile.tex」的樣子:將命令行參數傳遞給LaTeX文檔

\documentclass{article} 
........................ 
....................... 
....................... 
\begin{document} 
....................... 
...................... 
....................... 
....................... 
........................ 
....................... 
\input{macrofile1} OR {macrofile2} OR {macrofile3} ETC... 
....................... 
...................... 
...................... 
.................... 
..................... 
\end{document} 

我可以傳遞的「MACROFILE」的名稱作爲參數傳遞給「myfile.tex」?

感謝

約翰

+1

你不知何故設法問一個問題完全相同的標題作爲另一個問題,要求同樣的事情:http://stackoverflow.com/questions/1465665/passing-command-line-arguments-to-latex-document – 2010-01-10 01:13:45

+0

這可能是對的,但是*這個問題對我有幫助,而那個沒有。我也先看過那個。 – zebediah49 2013-02-11 18:40:25

回答

11

沒錯,是這樣的:

latex "\def\myvar{info-to-pass} \input{<filename>}" 

應該做你。然後您可以在文檔中使用\ myvar。

\input{...}指定latex命令的文件名。