Zusammenführen von PDF-Dateien mit Ghostscript: Ist es möglich, die Find-Ausgabe an GS weiterzuleiten?

Zusammenführen von PDF-Dateien mit Ghostscript: Ist es möglich, die Find-Ausgabe an GS weiterzuleiten?

Ich möchte mehrere PDF-Dateien zu einer einzigen zusammenführen. Gefundendiese tolle Antwortauf SO, aber hier gibt es ein Problem. Meine PDFs liegen nicht im selben Verzeichnis, also möchte ich im Wesentlichen einen findAufruf durchführen und die Ausgabe an weiterleiten gs, etwa so:

find . -path "*_somedir/*" -name "some.pdf" -print0 | gs ...

Ich habe die Manualpages für geprüft, gsaber es gibt keine Informationen zu nullterminierten Argumenten, daher bin ich nicht sicher, wie ich die Argumente von findan übergeben soll gs. Ich gehe davon aus, dass der Aufruf nach dem ersten Argument ausgeführt wird, wenn ich das Flag -print0 überspringe gs.

Irgendwelche Ideen? Ich bin natürlich offen für andere Möglichkeiten zum Zusammenführen der PDFs, möchte aber die Installation neuer Pakete vermeiden, da dies auf einem Community-Server erfolgen soll.

Antwort1

Eine Möglichkeit, dies zu tun, unter der Annahme von GNU find(1)und GNU xargs(1):

find /some/dir -type f -name '*.pdf' -print0 | \
    xargs -0 gs -q -dNOPAUSE -sDEVICE=pdfwrite -dBATCH -sOUTPUTFILE=out.pdf

Allerdings sind PDFs komplizierte Dinger. Erwarten Sie gemischte Ergebnisse.

verwandte Informationen