latex automatisieren

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
kleinerspast
Beiträge: 276
Registriert: 29.08.2007 22:53:28

latex automatisieren

Beitrag von kleinerspast » 19.11.2009 15:57:52

Hi,

ich bin normal kein Linux Skripter oder Programmierer, deshalb muss ich mal ganz doof fragen ;-)

also ich habe in einem Ordner mehrere .tex Dateien. Ich kann mir z. b. mit find -name "*.tex" alle .tex Dateien in diesem Ordner anzeigen lassen. Es muss doch jetzt irgendwie möglich sein das ich mit einer einfachen for-schleife einfach mal auf alle diese tex dateien den pdflatex befehl ausfürhre oder?

Also theoretisch müsste das gehen, hab nur leider nicht die praktische erfahrung dafür

Greetz

Benutzeravatar
The Torso
Beiträge: 882
Registriert: 13.07.2003 12:46:40
Lizenz eigener Beiträge: MIT Lizenz

Re: latex automatisieren

Beitrag von The Torso » 19.11.2009 16:02:07

kleinerspast hat geschrieben:Hi,

ich bin normal kein Linux Skripter oder Programmierer, deshalb muss ich mal ganz doof fragen ;-)

also ich habe in einem Ordner mehrere .tex Dateien. Ich kann mir z. b. mit find -name "*.tex" alle .tex Dateien in diesem Ordner anzeigen lassen. Es muss doch jetzt irgendwie möglich sein das ich mit einer einfachen for-schleife einfach mal auf alle diese tex dateien den pdflatex befehl ausfürhre oder?

Also theoretisch müsste das gehen, hab nur leider nicht die praktische erfahrung dafür

Greetz
Versuch mal so was in die Richtung (ich hoff ich hab dich jetzt richtig verstanden):

Code: Alles auswählen

find -name "*tex" | wile read file; 
do 
     latex "$file";
done
Debian GNU/Linux 00101010

mullers

Re: latex automatisieren

Beitrag von mullers » 19.11.2009 16:05:19

Das wäre eine Möglichkeit

Code: Alles auswählen

find . -name "*.tex" -exec pdflatex '{}' \;
Gruesse
henry

/edit:

Code: Alles auswählen

find . -name "*.tex" -exec pdflatex '{}' \; done; latexmk -c
Hiebei werden die generierten .log, .aux Dateien gleich mit gelöscht.
Zuletzt geändert von mullers am 19.11.2009 18:16:07, insgesamt 1-mal geändert.

Benutzeravatar
Meillo
Moderator
Beiträge: 9254
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: latex automatisieren

Beitrag von Meillo » 19.11.2009 16:18:02

Wenn alle Dateien in der ersten Ebene sind, dann

Code: Alles auswählen

for i in *.tex ; do
  pdflatex "$i"
done
Wenn sie tiefer verschachtelt sind, dann muss man sich auch überlegen ob die generierten Dateien landen. Evtl. sollte man das Verzeichnis wechseln.
Use ed once in a while!

Benutzeravatar
Lord_Carlos
Beiträge: 5578
Registriert: 30.04.2006 17:58:52
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Dänemark

Re: latex automatisieren

Beitrag von Lord_Carlos » 19.11.2009 17:48:02

Kann man das nicht einfach so machen:
pdflatex *.tex
?

Code: Alles auswählen

╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!

kleinerspast
Beiträge: 276
Registriert: 29.08.2007 22:53:28

Re: latex automatisieren

Beitrag von kleinerspast » 19.11.2009 18:24:06

Hi,

die for-Schleife ist die Lösung welche ich suchte! Einfacher als ich dachte. Vielen Dank!!! Super!

ben.a
Beiträge: 372
Registriert: 12.04.2007 18:42:57

Re: latex automatisieren

Beitrag von ben.a » 19.11.2009 22:39:48

Lord_Carlos hat geschrieben:Kann man das nicht einfach so machen:
pdflatex *.tex
?
Nein :-). Hat mich auch ein bisschen gewundert, aber sicher hat irgendjemand eine gute Erklaerung dafuer, warum das nicht geht.

Benutzeravatar
peschmae
Beiträge: 4844
Registriert: 07.01.2003 12:50:33
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: nirgendwo im irgendwo

Re: latex automatisieren

Beitrag von peschmae » 21.11.2009 12:47:36

Naja, das müsste dann halt pdflatex selber unterstützen bzw. die damit übergebenen mehreren TeX-Dateinamen so interpretieren wie du das meinst. Und das tut es halt nicht. Ein pdflatex datei1.tex datei2.tex funktioniert in dem Sinne genausowenig - ist ja auch nicht nötig, dafür hat man eine Shell :D

MfG Peschmä
"er hätte nicht in die usa ziehen dürfen - die versauen alles" -- Snoopy

Antworten