📜  Linux chgrp命令

📅  最后修改于: 2020-12-08 05:11:01             🧑  作者: Mango

Linux chgrp命令| Linux变更组

Linux chgrp命令用于更改文件或目录的组所有权。在Linux文件系统中,每个文件都与相应的所有者和组相关,并且具有读取,写入和执行权限。

句法:

chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...

选项:

chgrp命令支持以下命令行选项:

-c,-changes:类似于“ verbose”选项,但是仅在进行更改时才报告。

-f,–silent,–quiet:用于禁止显示大多数错误消息。

-v,–verbose:用于显示每个已处理文件的诊断。

–dereference:它用于影响每个符号链接的重要性,而不是符号链接本身。

-h,–no-dereference:用于更改符号链接,而不是任何引用的文件

–no-preserve-root:它特别用于不处理'/'。

–preserve-root:当默认命令无法在'/'上递归操作时使用。

–reference = RFILE:用于使用RFILE的组,而不是特定的组。

-R,– recursive:用于递归地处理文件和目录。该选项指定“ -R”选项的遍历。

-H:用于遍历目录的符号链接。

-L:用于遍历到目录的每个符号链接。

-P:如果指定此选项,则它将不遍历任何符号链接(默认)

–help:用于显示帮助手册,其中包含受支持的命令行选项的简要信息。

–version:用于显示版本信息。

chgrp命令的示例

让我们看一下chgrp命令的以下示例:

  • 更改文件的组所有权
  • 更改文件夹的组所有权
  • 递归更改文件夹及其内容的组所有权
  • 通过使用参考文件的组名更改组

更改文件的组所有权

我们可以更改任何特定文件的组。要更改文件的组所有权,请执行以下命令:

sudo chgrp javatpoint Demo1.txt

上面的命令会将文件“ Demo1.txt”的组更改为Javatpoint。考虑以下输出:

从上面的输出中可以看到, “ groups”命令用于列出系统中的可用组。并且,使用sudo执行“ chgrp”命令是因为它需要sudo特权。

更改文件夹的组所有权

要更改文件夹的组所有权,请使用文件夹名称执行“ chgrp”命令,如下所示:

sudo chgrp javatpoint Newdirectory 

上面的命令将更改“ Newdirectory”文件夹的组所有权。考虑以下输出:

如果chgrp命令成功执行,将不会产生任何输出。要确认更改,请执行“ ls -l”命令。

递归更改文件夹及其内容的组所有权

我们可以通过应用一些规则来递归地更改文件或文件夹的组所有权。要递归更改文件夹及其内容的组所有权,请执行以下命令:

sudo chgrp -R javatpoint Newdirectory

考虑以下输出:

通过使用参考文件的组名更改组

我们可以使用参考文件的组名来更改文件的组。要使用任何其他文件或目录的引用来更改另一个文件的组,请执行以下命令:

sudo chgrp -R --reference=ref.txt Newdirectory

上面的命令将通过使用“ Nwdirectory”的引用来更改“ ref.txt”的组。考虑以下输出: