Provided by: manpages-posix_2.16-1_all bug

NAME

       chgrp - change the file group ownership

SYNOPSIS

       chgrp [-hR] group file ...

       chgrp -R [-H | -L | -P ] group file ...

DESCRIPTION

       The  chgrp  utility  shall  set the group ID of the file named by each file operand to the
       group ID specified by the group operand.

       For each file operand, or, if the -R option is used, each file encountered  while  walking
       the  directory  trees  specified  by  the  file  operands, the chgrp utility shall perform
       actions equivalent to the chown() function defined in  the  System  Interfaces  volume  of
       IEEE Std 1003.1-2001, called with the following arguments:

        * The file operand shall be used as the path argument.

        * The user ID of the file shall be used as the owner argument.

        * The specified group ID shall be used as the group argument.

       Unless chgrp is invoked by a process with appropriate privileges, the set-user-ID and set-
       group-ID bits of a regular file shall be cleared upon successful completion; the set-user-
       ID and set-group-ID bits of other file types may be cleared.

OPTIONS

       The  chgrp  utility  shall conform to the Base Definitions volume of IEEE Std 1003.1-2001,
       Section 12.2, Utility Syntax Guidelines.

       The following options shall be supported by the implementation:

       -h     If the system supports group IDs for symbolic links, for  each  file  operand  that
              names  a file of type symbolic link, chgrp shall attempt to set the group ID of the
              symbolic link instead of the file referenced by the symbolic link.  If  the  system
              does  not  support group IDs for symbolic links, for each file operand that names a
              file of type symbolic link, chgrp shall do nothing more with the current  file  and
              shall go on to any remaining files.

       -H     If  the  -R  option  is  specified  and  a symbolic link referencing a file of type
              directory is specified on the command line, chgrp shall change  the  group  of  the
              directory referenced by the symbolic link and all files in the file hierarchy below
              it.

       -L     If the -R option is specified and a  symbolic  link  referencing  a  file  of  type
              directory is specified on the command line or encountered during the traversal of a
              file hierarchy, chgrp shall change the group of the  directory  referenced  by  the
              symbolic link and all files in the file hierarchy below it.

       -P     If  the -R option is specified and a symbolic link is specified on the command line
              or encountered during the traversal of a file hierarchy,  chgrp  shall  change  the
              group  ID  of  the  symbolic  link if the system supports this operation. The chgrp
              utility shall not follow the symbolic link to any other part of the file hierarchy.

       -R     Recursively change file group IDs. For each file operand that  names  a  directory,
              chgrp  shall  change the group of the directory and all files in the file hierarchy
              below it. Unless a -H, -L, or -P option is specified, it is  unspecified  which  of
              these options will be used as the default.

       Specifying  more  than  one  of the mutually-exclusive options -H, -L, and -P shall not be
       considered an error.  The last option  specified  shall  determine  the  behavior  of  the
       utility.

OPERANDS

       The following operands shall be supported:

       group  A  group  name  from  the  group database or a numeric group ID. Either specifies a
              group ID to be given to each file named by one of the file operands. If  a  numeric
              group  operand  exists  in  the group database as a group name, the group ID number
              associated with that group name is used as the group ID.

       file   A pathname of a file whose group ID is to be modified.

STDIN

       Not used.

INPUT FILES

       None.

ENVIRONMENT VARIABLES

       The following environment variables shall affect the execution of chgrp:

       LANG   Provide a default value for the internationalization variables that  are  unset  or
              null.  (See  the  Base  Definitions  volume  of  IEEE Std 1003.1-2001, Section 8.2,
              Internationalization Variables for the precedence of internationalization variables
              used to determine the values of locale categories.)

       LC_ALL If  set  to  a  non-empty  string  value,  override  the  values  of  all the other
              internationalization variables.

       LC_CTYPE
              Determine the locale for the interpretation of sequences of bytes of text  data  as
              characters  (for  example,  single-byte  as  opposed  to  multi-byte  characters in
              arguments).

       LC_MESSAGES
              Determine the locale that should be used to  affect  the  format  and  contents  of
              diagnostic messages written to standard error.

       NLSPATH
              Determine the location of message catalogs for the processing of LC_MESSAGES .

ASYNCHRONOUS EVENTS

       Default.

STDOUT

       Not used.

STDERR

       The standard error shall be used only for diagnostic messages.

OUTPUT FILES

       None.

EXTENDED DESCRIPTION

       None.

EXIT STATUS

       The following exit values shall be returned:

        0     The utility executed successfully and all requested changes were made.

       >0     An error occurred.

CONSEQUENCES OF ERRORS

       Default.

       The following sections are informative.

APPLICATION USAGE

       Only  the  owner of a file or the user with appropriate privileges may change the owner or
       group of a file.

       Some implementations restrict the use of chgrp to a user with appropriate privileges  when
       the group specified is not the effective group ID or one of the supplementary group IDs of
       the calling process.

EXAMPLES

       None.

RATIONALE

       The System V and BSD versions use different exit status codes. Some  implementations  used
       the  exit  status  as  a  count  of  the  number of errors that occurred; this practice is
       unworkable since it can overflow the range of  valid  exit  status  values.  The  standard
       developers chose to mask these by specifying only 0 and >0 as exit values.

       The  functionality  of  chgrp is described substantially through references to chown(). In
       this way, there is no duplication of effort required for describing  the  interactions  of
       permissions, multiple groups, and so on.

FUTURE DIRECTIONS

       None.

SEE ALSO

       chmod() , chown() , the System Interfaces volume of IEEE Std 1003.1-2001, chown()

COPYRIGHT

       Portions  of  this  text  are  reprinted  and  reproduced in electronic form from IEEE Std
       1003.1, 2003 Edition, Standard for Information Technology  --  Portable  Operating  System
       Interface  (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by
       the Institute of Electrical and Electronics Engineers, Inc and  The  Open  Group.  In  the
       event  of  any  discrepancy  between this version and the original IEEE and The Open Group
       Standard, the original IEEE and The Open Group  Standard  is  the  referee  document.  The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .