trying to script a command line

Charles Jones charles.jones at ciscolearning.org
Tue Mar 4 20:53:47 MST 2008


Ahh yeah...can't believe I didn't think of that.  BTW, for pdftk, "cat" 
is a command line option, not referring to the cat we know and love.

I think the final ver of the command would be:

cat I-A-files.txt |xargs -i pdftk "{}" cat output I-A.pdf verbose

Okay...my head hurts now :)

-Charles

Erich Newell wrote:
> 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 
> <mailto: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.pdf verbose
>     > >>> 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
>     <mailto: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
>     <mailto: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
>     <mailto: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."
> ------------------------------------------------------------------------
>
> ---------------------------------------------------
> 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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.PLUG.phoenix.az.us/pipermail/plug-discuss/attachments/20080304/0c4eb27e/attachment.htm 


More information about the PLUG-discuss mailing list