trying to script a command line

Erich Newell erich.newell at gmail.com
Tue Mar 4 20:24:47 MST 2008


xargs has additional flexibility...try using the "replace string" parameter

So do:

cat list.txt | xargs -i cat "{}" | pdftk output -

The curly braces indicate where the input goes...in this case, between the
quotes. Should handle those pesky spaces for you.

Looks like this will dump a ton of pdf content to stdout....is that what you
really want?




On Tue, Mar 4, 2008 at 7:22 PM, Craig White <craigwhite at azapple.com> wrote:

> Again, that works but it fails because the PDF includes on the last file.
> As I said, I don't think an xargs thing is going to work at all because as
> the man page states...the '-' option is to pass only a single file via
> stdin.
>
> Craig
>
> On Tue, 2008-03-04 at 19:10 -0700, Charles Jones wrote:
> > Ah those darn spaces sure cause problems :)  Give this a try:
> >
> > $ cat I-A-files.txt | sed 's/ /\\ /g' | xargs cat | pdftk - output
> > I-a.pdf verbose
> >
> > It works for my test case:
> > $ cat file.txt
> > file with spaces
> > some other file
> >
> > $ cat "file with spaces"
> > This is the contents of a file with spaces
> > $ cat some\ other\ file
> > This is some other file
> >
> > $ cat file.txt | sed 's/ /\\ /g' |xargs cat
> > This is the contents of a file with spaces
> > This is some other file
> >
> > Probably a more elegant way to do it, but I'm late for dinner :-)
> >
> > -Charles
> >
> >
> > Craig White wrote:
> > > That doesn't seem to work. I quoted the part of the man page that the
> > > '-' is used to pass only a single PDF into pdftk via stdin and thus
> the
> > > xargs thing seems not to fly.
> > >
> > > $ cat I-A-files.txt | xargs -0 pdftk cat output I-A.pdf verbose
> > > Error: No input files.  Exiting.
> > > Errors encountered.  No output created.
> > > Done.  Input errors, so no output created.
> > >
> > > Thanks
> > >
> > > Craig
> > >
> > > On Tue, 2008-03-04 at 17:24 -0700, Charles Jones wrote:
> > >
> > >> Give this a try:
> > >>
> > >> cat /path/to/filenames_file.xt |xargs pdftk
> > >>
> > >> -Charles
> > >>
> > >> Craig White wrote:
> > >>
> > >>> I have an awkward situation with pdftk
> > >>>
> > >>> I have a file with filenames that I want to pass to pdftk as input
> > >>> files.
> > >>>
> > >>> according to the man page...
> > >>> <input PDF files | - | PROMPT>
> > >>>   A list of the input PDF files. If you plan to combine these PDFs
> > >>>   (without using handles) then list files in the  order  you  want
> > >>>   them combined.  Use - to pass a single PDF into pdftk via stdin.
> > >>>
> > >>> and thus, this doesn't work...
> > >>>
> > >>> pdftk `cat "/mypath/to/I-A-files.txt"` cat output I-A.pdf verbose
> > >>>
> > >>> fails on spaces within the paths/filenames in that file.
> > >>>
> > >>> I have tried both escaping the spaces with \ and enclosing each path
> > >>> within a double quote but neither works.
> > >>>
> > >>> I have also tried (which fails)...
> > >>>
> > >>> $ cat "/mypath/to/I-A-files.txt" | pdftk - cat output I-A.pdfverbose
> > >>> Error: Failed to open PDF file:
> > >>>    -
> > >>> Errors encountered.  No output created.
> > >>> Done.  Input errors, so no output created.
> > >>> sh-3.2$ ls -l
> > >>> total 4440
> > >>> -rw-r--r-- 1 craig administrative      10 2008-03-04 15:15
> doc_toc.html
> > >>> -rw-r--r-- 1 craig administrative    1898 2008-03-04 15:30
> I-A-files.txt
> > >>>
> > >>> Any suggestions on this?
> > >>>
> > >>> T
> > > ---------------------------------------------------
> > > PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> > > To subscribe, unsubscribe, or to change your mail settings:
> > > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> > >
> >
> > ---------------------------------------------------
> > PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> > To subscribe, unsubscribe, or to change your mail settings:
> > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>



-- 
"A man is defined by the questions that he asks; and the way he goes about
finding the answers to those questions is the way he goes through life."
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.PLUG.phoenix.az.us/pipermail/plug-discuss/attachments/20080304/b239a309/attachment.htm 


More information about the PLUG-discuss mailing list