Zum Inhalt, überspringe Kopfzeile Zur Navigation, überspringe Kopfzeile
Damit aus einer LaTeX-Datei das fertige PDF-Dokument erzeugt wird, müssen verschiedene Befehle wie pdflatex, makeindex und bibtex ausgeführt werden. Zusätzlich darf man am Ende noch alle temporären Dateien entfernen. Die wiederholte Eingabe der Befehle in der richtigen Reihenfolge mit den korrekten Parametern kann mit der Zeit etwas aufwendig und nervig werden.
Aufruf eines Scriptes das alle nötigen Arbeitsschritte für einen abnimmt.
1: #!/bin/sh 2: 3: # Dateiname angegeben? 4: if [ $# -eq 0 ]; then 5: echo 6: echo Fehler: Kein Dateiname angegeben. 7: echo Benutzung: $0 [Dateiname] 8: echo 9: exit 10: fi 11: 12: # Dateiname ohne Endung ermitteln 13: DATEINAME=${1%.*} 14: 15: # LaTeX-Datei vorhanden? 16: if [ ! -e $DATEINAME.tex ]; then 17: echo 18: echo Fehler: Datei $DATEINAME.tex nicht vorhanden. 19: echo 20: exit 21: fi 22: 23: # LaTeX-Datei übersetzen 24: echo 25: echo ---------------------------------------------------------------------- 26: echo pdflatex -intercation=nonstopmode $DATEINAME.tex 27: echo ---------------------------------------------------------------------- 28: pdflatex -interaction=nonstopmode $DATEINAME.tex 29: if [ $? -ne 0 ]; then 30: echo 31: echo Fehler: pdflatex 32: echo 33: exit 34: fi 35: 36: # Index erstellen 37: if [ -e $DATEINAME.idx ]; then 38: echo 39: echo ---------------------------------------------------------------------- 40: echo makeindex $DATEINAME.idx 41: echo ---------------------------------------------------------------------- 42: makeindex $DATEINAME.idx 43: if [ $? -ne 0 ]; then 44: echo 45: echo Fehler: makeindex 46: echo 47: exit 48: fi 49: fi 50: 51: # Abkürzungsverzeichnis erstellen 52: if [ -e $DATEINAME.nlo ]; then 53: echo 54: echo ---------------------------------------------------------------------- 55: echo makeindex $DATEINAME.nlo -s nomencl.ist -o $DATEINAME.nls 56: echo ---------------------------------------------------------------------- 57: makeindex $DATEINAME.nlo -s nomencl.ist -o $DATEINAME.nls 58: if [ $? -ne 0 ]; then 59: echo 60: echo Fehler: makeindex 61: echo 62: exit 63: fi 64: fi 65: 66: # Literaturverzeichnis erstellen 67: if [ -e $DATEINAME.aux ]; then 68: echo 69: echo ---------------------------------------------------------------------- 70: echo bibtex $DATEINAME 71: echo ---------------------------------------------------------------------- 72: bibtex $DATEINAME 73: if [ $? -ne 0 ]; then 74: echo 75: echo Fehler: bibtex 76: echo 77: exit 78: fi 79: AUX=$(sed -e 's/\\\@input{//' -e 's/}//' -n -e '/.aux/ p' $DATEINAME.aux) 80: fi 81: 82: # LaTeX-Datei nochmal übersetzen und alles zusammenführen 83: for I in 1 2; do 84: echo 85: echo ---------------------------------------------------------------------- 86: echo pdflatex -intercation=nonstopmode $DATEINAME.tex 87: echo ---------------------------------------------------------------------- 88: pdflatex -interaction=nonstopmode $DATEINAME.tex 89: if [ $? -ne 0 ]; then 90: echo 91: echo Fehler: pdflatex 92: echo 93: exit 94: fi 95: done 96: 97: # Temporäre Dateien löschen 98: if [ -n "$AUX" ]; then 99: rm -f $AUX 100: fi 101: rm -f $DATEINAME.{aux,bbl,bit,blg,dvi,glo,idx,ilg,ind,lof,log,lot,nlo,nls,out,toc} 102: 103: # PDF im Reader anzeigen 104: if [ -e $DATEINAME.pdf ]; then 105: open $DATEINAME.pdf 106: fi
Den Befehl open $DATEINAME.pdf für die Anzeige des PDF-Dokuments entsprechend anpassen da der Befehl open ein Mac OS X-Befehl ist.
Zum Inhalt zurück, überspringe Navigation | Zum Seitenanfang