linux chgrp命令详解


chgrp为change group的缩写,用于改变一个文件的所属用户组. 文件所属用户组必须是在/etc/group文件中记录的合法用户组. chgrp命令常用格式如下所示:
[root@initroot ~]# chgrp [-R] 用户组名 文件或目录 
              
-R选项可以递归(recursive)更改目录及其子目录下文件的所属用户组.
将backup.sh文件的所属用户组变更为root:
                [root@initroot ~]# chgrp root backup.sh
                [root@initroot ~]# ls -al backup.sh
                -rwxrw-r--   3 peter root  4096 Dec 17 19:52 backup.sh
              

chgrp是change group的缩写,用于改变文件的所属用户组。要修改的组名必须是/etc/group中记录的用户组,否则会提示错误。
-R选项用于递归(recursive)修改,即连同目录内的所有文件、子目录都跟新为新用户组。常常用在修改某一目录内的所有文件以及子目录

常见用法示例:

chgrp [-R] groupname filename/dirname
将initroot.html文件的用户组更改为www:
chgrp www initroot.html
将initroot目录下的所有文件以及子目录的用户组更改为www:
chgrp -R www initroot

Usage:
chgrp [OPTION]... GROUP FILE...
or:
chgrp [OPTION]... --reference=RFILE FILE...
Change the group of each FILE to GROUP.With --reference, change the group of each FILE to that of RFILE.
-c, --changes like verbose but report only when a change is made
-f, --silent, --quiet suppress most error messages
-v, --verbose output a diagnostic for every file processed
--dereference affect the referent of each symbolic link (this is the default), rather than the symbolic link itself
-h, --no-dereference affect symbolic links instead of any referenced file (useful only on systems that can change the ownership of a symlink)
--no-preserve-root do not treat '/' specially (the default)
--preserve-root fail to operate recursively on '/'
--reference=RFILE use RFILE's group rather than specifying a GROUP value
-R, --recursive operate on files and directories recursively
The following options modify how a hierarchy is traversed when the -R option is also specified. If more than one is specified, only the final one takes effect.
-H if a command line argument is a symbolic link to a directory, traverse it
-L traverse every symbolic link to a directory encountered
-P do not traverse any symbolic links (default)
--help display this help and exit
--version output version information and exit
Examples:
chgrp staff /u Change the group of /u to "staff".
chgrp -hR staff /u Change the group of /u and subfiles to "staff".
GNU coreutils online help: http://www.gnu.org/software/coreutils/ Full documentation at:
http://www.gnu.org/software/coreutils/chgrp or available locally via:
info '(coreutils) chgrp invocation'

initroot编辑整理,转载请注明www.initroot.com

100次点赞 100次阅读