On Tue, May 27, 2008 at 10:43:00AM -0700, Stuart Anderson wrote:
> Nuts. I was afraid that was going to be the answer. Unfortunately,
> it violates the very helpful advise given above, i.e., run with "-v"
> and add exclude rules for files you don't want to transfer based
> on the output seen.

That rule is not violated (the matching is correct), it is just that you
can't try to exclude something in the middle of a relative path that
you've specified.

You can work around the issue by moving higher in the directory
structure and using includes/excludes.  For example, instead of:

rsync -avR --exclude a/ /tmp/source/./[a-z]/* /tmp/destination                  
                                     

You'd change the copy to be:

rsync -av --exclude-from=file /tmp/source/ /tmp/destination/

and have an exclude file:

# First, we don't want that "a" dir (anchor it with a leading slash).
- /a/
# Next, this is our matching rule from the path above.
+ /[a-z]/
# Then, exclude everything else _in_this_dir_ (note leading slash).
- /*
# Finally, I added this rule to emulate the '*' above for a shell
# that omits dot files from its globbing.
- /*/.*

If you have any questions (such as how to adapt your real copy command),
let us know.

..wayne..
-- 
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

Reply via email to