On 14 Nov 2001, Jason Helfman <[EMAIL PROTECTED]> wrote: > rsync -avnp remote::gif/ `find /home/www/html/ -maxdepth 1 > -name "*.[j,g][pg,if]*"` /tmp/
I can't see how this syntax will work. The shell will expand this to: rsync -avnp remote::gif/ /home/www/html/foo.jpg /home/www/html/bar.gif (more filenames here) /tmp/ which I think from rsync's point of view means: copy all of remote::gif/, plus a pile of local files, into /tmp/. Is that really what you want? Secondly, when running from an rsync daemon (two-colon syntax) rsync should never expand remote backtick substitutions, because we don't want to allow weakly-authenticated remote users to run commands on the server. Incidentally, your shell syntax is strange. (Not a flame, just a point of information. :-) Your wildcard means: "anything containing a dot then any character from the set (j, comma, or g), then any character from the set (p, g, comma, i or f)." If you wanted all images then it might be better to say find /home/www/html -maxdepth 1 '(' -name '*.jpg' -o -name '*.gif' ')' Note also that -n means "don't copy anything, just list filenames". What is that it you actually want to achieve? If you want all image files and directories to come back to /tmp/remoteimages, then try rsync -avp remote::gif/ --include '*.jpg' --include '*.gif' \ --include '*/' --exclude '*' /tmp/remoteimages/ If you just want a list of them: rsync -avp remote::gif/ --include '*.jpg' --include '*.gif' \ --include '*/' --exclude '*' -- Martin