in reply to (code) Recursive chmod chown chgrp in 30 lines

I guess I'd have to agree with jj808.

You would have to have a serious number of files under unix (say 50K), or a seriously brain dead OS to make this worth the risk. One problem I see is that all of your files will have the same permissions set. So they will all be executable or all non-executable. The other problem is that you are executing every operation even if it isn't needed, though I doubt that slows things down much.

In general, you can do all of this with two commands (since you generally want the directory's permissions to be similar to a file's permissions, except for the 'x' bit)...

# chown -R newuser:newgroup /my/dir # chmod -R ug+rwX /my/dir

... (where 'X' means put an x bit on it if it already has an x bit set) on any reasonable unix system.