Q:

How can you recursively copy all of the *.foo files in src to target using cp and/or find?

cp -v -ur path/to/jsps/ /dest/path/

The above command copies all of the files that have been updated from the source directory to the destination, preserving the directory structure.
What I can't figure out is how to copy only *.someExtention files. I know that you can use something like:
find -f -name *.jsp -exec some awesome commands {}

But I don't know how to do it (and I don't have time to read the info pages in detail).
All help is greatly appreciated.
Thanks,
LES

A:

If you want to use find / cp then the following should do the trick:
find -f -name *.jsp -exec cp --parents {} /dest/path \;

but rsync is probably the better tool.

A:

rsync might help - you can tell it to just copy certain files with a combination of include and exclude options, e.g.
rsync -a \
   --include='*.foo' \
   --include='*/' \
   --exclude='*' \
   path/to/jsps/ /dest/path/

See the manual and look at the section entitled FILTER RULES for more.

