mehrere Dateien durch ein skript o.ä. erstellen

Redefinition von Makros, Definition eigener Befehle sowie neuer Umgebungen


DonDron
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: So 4. Jul 2010, 14:26

mehrere Dateien durch ein skript o.ä. erstellen

Beitrag von DonDron »

Hallo zusammen!

Ich hoffe es findet sich jemand, der mir helfen könnte.

Und zwar: ich versuche mit latex mehrere Dateien zu erstellen und zwar so, dass ich ein skript o.ä. ablaufen lasse und ich x-viele Dateien herausbekomme. Zur Zeit muss ich von Hand immer Adresse usw. ändern und dann eine pdf erstellen. Dies würde ich gerne vereinfachen. Es müsste ca. so aussehen:
1. an einer bestimmten Stelle eine Nummer/Zahl und Stadt und Straße soll immer geändert werden durch andere
2. an anderen Stellen ebenfalls nur Nummern/Zahlen
3. eine pdf erstellen mit einem bestimmten Dateinamen
Das alles am besten in einem Zug.

Beispiel:

100, Musterstadt, Musterstraße

Zahl 1 100%
Zahl 2 95%
Zahl 3 60%

c:/.../100/.../1.jpg
c:/.../100/.../2.jpg
c:/.../100/.../3.jpg
c:/.../100/.../4.jpg

soll geändert werden in:

101, Musterstadt2, Musterstraße2

Zahl 4 100%
Zahl 5 70%
Zahl 6 40%

c:/.../101/.../1.jpg
c:/.../101/.../2.jpg
c:/.../101/.../3.jpg
c:/.../101/.../4.jpg

Ich weiß nicht ob es möglich ist, aber wenn doch, dann sollten die Nummern/Zahlen und Stadt und Straße immer aus einer .txt Datei herausgenommen werden. Außerdem einige Zahlen (Zahl1 usw.) aus einer Excel-Tabelle.

Was meint ihr dazu? Wäre meine Vorstellung möglich in der Umsetzung?

Vielen Dank im Voraus.

Benutzeravatar
domwass
TeX-Entwickler
TeX-Entwickler
Beiträge: 617
Registriert: Di 26. Aug 2008, 12:44
Kontaktdaten:

Beitrag von domwass »

So etwas kann man mit datatool machen.

Gruß,
Dominik.-

Nerd 032F

Beitrag von Nerd 032F »

Kann es sein, dass es um einen Serienbrief geht. Falls dem so ist, sei darauf hingewiesen, dass scrlttr2 (KOMA-Script-Brief-Klasse) so etwas unterstützt.

DonDron
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: So 4. Jul 2010, 14:26

Beitrag von DonDron »

Ja, genau. Es ist eine Art Serienbrief, bei dem jeweils Verschiedene Werte berechnet und eingetragen werden müssen. Ich Dachte mir eine Datenbank mit den ganzen Werten zu erstellen und dann einfach an die richtigen Stellen einsetzen lassen, alles voll automatisch. Nur brauch ich irgendwas, was ich einfach abspiele und dann z.B. 150 verschiedene pdf dateien habe....

ich glaube datatool ist schon hilfreich, nur trotzdem muss ich immer wieder eine pdf erstellen muss, also nicht automatisch.....

Benutzeravatar
bloodworks
Moderator
Moderator
Beiträge: 1425
Registriert: Mo 19. Jan 2009, 10:52
Wohnort: /dev/null

Beitrag von bloodworks »

Hallo theoretisch geht so was natürlich. Aber ich glaube wirklich auch dass du was Richtung scrlttr2 geht suchst.

Wenn dus unbedingt auf der Konsole machen willst, dann schreib dir n perl skript. Oder wenn du mehr so auf bashing stehst dann kannst du zB so was machen:
#!/bin/bash

i=1
array=(eins zwei drei vier fünf)

while [ $i -le 5 ]
do

echo  \\documentclass{scrreprt} \\usepackage[utf8]{inputenc} \\begin{document} ${array[i-1]} $i öäü \\end{document} >datei$i
pdflatex datei$i

i=$(( $i + 1 ))
done


(Das ist aus der bash rauskopiert, hoffe das ist kopierfähig.)

Du siehst hier dass es auch via Konsole geht. Mit so was wie da oben würde ich nicht arbeiten wollen. Ist mehr so n Proof of Concept.
Mit einer (La)TeX Lösung wie die genannte Briefklasse geht das natürlich komfortabler und auch "all-in-one".
[1] Nützliche Webdokumente für Anfänger und Fortgeschrittene
[2]Minimalbeispiel | [3]FAQ
[4]Regelwerk | [5] Knigge
Wenn nicht anderst angegeben ist mein System: texlive 2012, pdflatex, x86-64, Snow Leopard utd.
Angehöriger der Liga zur Verwendung von texdoc
texdoc mathmode koma l2picfaq l2tabu lshort-en
Achtung: Aufforderungen ein Minimalbeispiel oder mehr Erklärungen zu einer Frage zu liefern sind keine persönlichen Angriffe. Sie dienen viel mehr dazu die Kommunikation zwischen Fragendem und potentiellen Helfern zu erleichtern und zu präzisieren.


Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Wenn man die Daten aus einer gescheiten Datenbank exportiert, sollte es kein großes Problem sein, die direkt in Form einer adr-Datei für scrlttr2 zu exportieren. Damit kann man dann die Serienbrieffunktion von scrlttr2 direkt nutzen. Falls es dann noch stört, dass alle Briefe in einer einzigen PDF-Datei stehen, lässt sich auch das ändern. Da die Briefe alle gleich lang sein dürften genügt dafür bereits pdftk oder jedes andere Programm, das PDF-Dateien zerschneiden kann (beispielsweise ghostscript), zusammen mit einem kleinen Script/Batch.

Mit Paketen wie textmerg (← dies ist ein geprüfter Link, der direkt zur Paketkurzbeschreibung auf CTAN führt!) kann man das unabhängig von der Klasse machen. Die dafür benötigten Dateien kann man dann hoffentlich nicht nur aus Datenbanken, sondern auch aus Kalkulationsprogrammen exportieren.

Mit datatool sollte das Vorgehen auch nicht viel anders sein.

DonDron
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: So 4. Jul 2010, 14:26

Beitrag von DonDron »

Das hört sich ja super an! Ich danke euch für eure Tipps und Ideen.
Werde demnächst mal ausprobieren und euch sagen, ob es funktioniert!
Bis dann

Antworten