Tl; dr
pdfunite pode causar erro caso o descritor de arquivo que contém a saída padrão do comando em execução na substituição do comando esteja vazio no momento em que for lido.
Então é melhor você usar uma alternativa para pdfunite ; como você tem ghostscript instalado, você pode usar gs :
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=~/Desktop/2016-03-12.pdf Welcome.pdf <(enscript <<<"echo foo" -p -) Rooftops.pdf Announcements.pdf ComeAliveDryBones.pdf Benediction.pdf Dismissal.pdf
Se eu entendi corretamente, você estava muito perto:
pdfunite Welcome.pdf <(enscript <<<"Have a seat" -p - | ps2pdf - -) Rooftops.pdf Announcements.pdf ComeAliveDryBones.pdf Benediction.pdf Dismissal.pdf ~/Desktop/2016-03-12.pdf
O token <<<"Have a seat" no comando enscript redirecionará a entrada padrão de enscript para a string e o token -p - fará com que o comando enscript seja impresso na saída padrão;
Usar <() em vez de () fará com que todo o token <() seja substituído pelo descritor de arquivo que contém a saída padrão do comando executado em <() (AKA substituição de processo), usando - em vez de output.pdf fará ps2pdf imprimir o PDF na saída padrão em vez de em um arquivo.
Mas o problema com essa abordagem é que pdfunite pode resultar em erro caso o descritor de arquivo que contém a saída padrão do comando em execução na substituição do comando esteja vazio no momento em que for lido . / p>
Então é melhor você usar uma alternativa para pdfunite ; como você tem ghostscript instalado, você pode usar gs :
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=~/Desktop/2016-03-12.pdf Welcome.pdf <(enscript <<<"echo foo" -p -) Rooftops.pdf Announcements.pdf ComeAliveDryBones.pdf Benediction.pdf Dismissal.pdf
% enscript <<<"foo" -p - | ps2pdf - foo.pdf
[ 1 page * 1 copy ] left in -
% gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=foobar.pdf foo.pdf <(enscript <<<"bar" -p -)
[ 1 page * 1 copy ] left in -
GPL Ghostscript 9.16 (2015-03-30)
Copyright (C) 2015 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Processing pages 1 through 1.
Page 1
Loading NimbusMon-Bol font from /usr/share/ghostscript/9.16/Resource/Font/NimbusMon-Bol... 4726404 3142423 2470576 1091522 3 done.
Loading NimbusMon-Reg font from /usr/share/ghostscript/9.16/Resource/Font/NimbusMon-Reg... 4759732 3269347 2490768 1100127 3 done.
%
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=foobar.pdf foo.pdf <(enscript <<<"bar" -p -) corrige corretamente foo.pdf e um documento contendo a palavra "barra" gerada pelo script PostScript gerado por enscript <<<"bar" -p - .