Frage zum Ausdrucken von PDF Dateien

Ulf Rompe ulf.buntu at rompe.org
Mit Apr 22 16:20:10 BST 2009


Am Mittwoch, den 22.04.2009, 07:57 +0200 schrieb Michael Kleinschnitker:
> > Falls dem so ist, wie lautet die Angabe des Interpreters im Hashbang?
> > Falls dort "#!/bin/sh" steht, ersetze bitte mal die "sh" durch die
> > "bash" und probiere noch einmal die erste Variante.
> Genau ich versuche das ganze als Skript laufen zu lassen.
> Ich habe auch den Hashbang geändert.
> 
> > Die dash, die auf Ubuntu-Systemen die sh bereitstellt, kennt die
> > erweiterte Syntax {..} nämlich nicht. Die zweite Variante hingegen
> > funktioniert dort nicht, weil die Ausgabe des Shell-Kommandos "seq"
> > komplett an die Stelle geschrieben wird, wo der Aufruf stattfindet. Hier
> > müsstest Du also alternativ mit einer Schleife arbeiten.
> Leider funktioniert es nicht. Es kommt folgende Fehlermeldung:
> pdfjoin: sdsingle_{1..10}.pdf does not exist, no files were processed

Kann gar nicht sein.™ :-)

Wenn Du wirklich die bash als Interpreter eingetragen hast, muss die
Sequenz aufgelöst werden. Das da oben ist aber eine Ausgabe, wie sie von
der dash generiert werden würde. Teste doch bitte mal folgende Zeilen,
indem Du sie einfach komplett in ein Shell-Fenster kopierst:

cat >/tmp/bla.sh <<EOF
#!/bin/bash  
echo sdsingle{1..10}.sh
EOF
chmod 0755 /tmp/bla.sh 
/tmp/bla.sh

Wenn da wieder nur "sdsingle_{1..10}.pdf" ausgegeben wird, dann ist
Deine bash kaputt. Bei mir (und vermutlich auch sonst überall) wird die
korrekte Liste der Filenamen ausgegeben. Wenn das bei Dir auch so ist,
dann stimmt etwas mit dem Aufruf des Skripts noch nicht. Wie wird es
denn überhaupt aufgerufen? Irgendwie mit "sh <SCRIPTNAME>" vielleicht?
Dann wäre durch die explizite Verwendung der dash der Hashbang
unwirksam. Ausprobieren kannst Du das so:

sh /tmp/bla.sh

Ansonsten poste hier doch bitte einmal das komplette Script und die
genaue Art des Aufrufs. Vielleicht geht uns dann ein Licht auf. 

[x] ulf
-- 
Nie in die ferne Zeit verliere dich! Den Augenblick ergreife! Der ist dein.
(Schiller)