On Mon, Feb 25, 2013 at 2:21 PM, Per Jessen
Greg Freemyer wrote:
All,
In non-working-psuedo-find-language I want to find a command to do:
find . -name \*.E01 -exec ewfverify -l $(basename '{}').ewfverify.out '{}' ;
Can anyone give me the right syntax. I'm not sure if it is easier to add xargs to the mix, if so that's fine too.
=== background with examples
I have common situation where I have a parent folder with multiple children folders.
This command more or less does what I want:
find . -name \*.E01 | xargs -n 1 ewfverify > ewfverify.out
That effectively does the same as (ewfverify
;ewfverify ;ewfverify ;ewfverify ; etc ) ewfverify.out
But I really want to have each command be more like:
ewfverify -l
.ewfverify_log I think just using find -exec will be better.
Hi Greg
your first exmaple will probably do what you want, you just need a couple of strategically placed escapes. I'm no fan of the -exec option, I would do this instead:
find . -name \*.E01 -printf '%f %p\n' | \ xargs printf "ewfverify -l \$(basename %s).ewfverify.out %s\n" | sh
Per, You almost read my mind. Adding a -s .E01 gives me what I really wanted. find . -name \*.E01 -printf '%f %p\n' | \ xargs printf "ewfverify -l \$(basename -s .E01 %s).ewfverify.out %s\n" | sh Thanks Greg -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org