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

Note that in some Unix systems, users are allowed to chown() on their own files, and "give them away". And on most (if not all) Unix systems, users are allowed to "chgrp" files provided they
  1. Own the file.
  2. Are a member of the current group owner of the file.
  3. Are a member of the new group owner of the file.

Several years ago, I wrote the "chmod" command of the Perl Power Tools (PPT). It was interesting to see that "chmod" was implemented differently on all Unix systems I tested (and often, the manual differed from the implementation as well). Figuring out what chmod = file does depending on the permissions of the file (or directory) on the various operating systems was interesting.

Abigail