chgrp, short for change group, is a shellcommand for changing the group associated with a Unix-based file systemfile – including special files such as directories. Changing the group of a file is restricted to a super-user (such as via sudo) or to the file's owning user if the user is in the specified group.
A file has access permissions for the owning user, a group and for others. Changing the group for a file changes access to it based on users' group memberships.
The version of chgrp bundled in GNUcoreutils was written by David MacKenzie.[2]
Use
Generally, the syntax can be described as:
chgrp [options] groupfiles
group specifies the group with which the files should be associated; may be either a symbolic name or an identifier
files specifies one or more files, which may be the result of a glob expression like *.conf
Options:
-RRecurse through directories
-vVerbose output: log the name of each file changed
-fForce or forge ahead even if an error occurs
Examples
The following demonstrates changing the group of files matching *.conf to staff – provided the user owns the files (is gbeeker) and is a member of staff. The change will allow members of the group staff to modify the files since the group-class permissions (read/write) will apply; not the others-class permissions (read only).
$ ls-l*.conf
-rw-rw-r-- 1 gbeeker wheel 3545 Nov 04 2011 prog.conf-rw-rw-r-- 1 gbeeker wheel 3545 Nov 04 2011 prox.conf$ chgrpstaff*.conf
$ ls-l*.conf
-rw-rw-r-- 1 gbeeker staff 3545 Nov 04 2011 prog.conf-rw-rw-r-- 1 gbeeker staff 3545 Nov 04 2011 prox.conf
See also
chmod – Shell command for changing access permissions of a file
chown – Shell command for changing the owner of a file
Group identifier (Unix) – Unix/POSIX system account group number; numeric value used to represent a specific groupPages displaying short descriptions of redirect targets