这 chgrp 命令 代表更改组权限。 它是 *nix 平台上的一个实用程序,用于将每个文件的组所有权更改为某个给定的 GROUP。
如何使用chgrp命令?
让我们先从 chgrp 命令的基本语法开始,然后深入了解如何使用该工具。
chgrp [OPTION]... GROUP FILE... chgrp [OPTION]... --reference=RFILE FILE...
您可以使用 ls 命令:
ls -l
现在如果你想改变一个文件的组权限,你可以用 chgrp 命令:
sudo chgrp groupname filename
同样,您还可以通过以下方式更改文件夹的组:
sudo chgrp groupname foldername
要更改文件和文件夹的组(递归),请使用上述命令 -R 或者 –递归
sudo chgrp -R groupname foldername
您还可以使用参考文件更改组而不是指定组值,假设我们有一个名为 测试.txt 它与某个组相关联,并且有一个名为 FTP/ 我们想要将组更改为与之关联的组 测试.txt 我们可以通过以下方式做到这一点:
sudo chgrp -R --reference=referencefile filename
这 -v 或者 – 冗长 将输出为文件处理的每个诊断,
这 -C 或者 -变化 option 与verbose 非常相似,但只有在进行更改时才会输出,
这 -F 或者 -沉默的 或者 -安静的 用于抑制错误消息。
递归标志 (-R)
与递归一起使用的标志很少(-R) 对于操作如何穿越,它们如下:
我们将在以下目录树上测试这些选项。
ftp/ ├── remotedir │ └── newdir │ ├── newtest.txt │ └── oldtest.txt ├── sym_web -> /home/suryansh/web └── test.txt
和,
web ├── index.html ├── public_html └── style └── style.css
1. 该 -H 或者 – 无解引用 选项只会更改特定符号链接的组所有权,而不是该符号链接内的内容。
因此,正如您在上图中所看到的,使用 -h 标志实际上甚至更改了符号链接的标志,并且不会遍历符号链接。
2. 该 -H 选项将更改所有文件和目录的组,但不会更改符号链接和目录及其符号链接的内容。
正如你在上面的例子中看到的,符号链接组没有改变,所以创建符号链接的目录中的内容没有改变。
3. 该 -L option 将更改所有文件和目录的组,当遇到符号链接时,它将穿越符号链接并更改其中的文件和目录组。 但是,符号链接将保持原样!
您可以在上面的示例中看到,组中的文件和目录已更改 FTP/ 但不适用于符号链接 ftp/sym_web. 但是递归穿过符号链接到目录(网络/) 并更改了目录的组 (网络/) 以及其中的内容。
4. 在里面 -P 标志,递归不会穿过符号链接。 它是默认标志 -R 选项。
你可以在上面的例子中看到,当我们执行 -R 选项与 -L 标志,组已更改为 FTP/ 和内容里面的所有内容 FTP/ 但递归没有穿过符号链接,所以组 网络/ 以及里面的内容 网络/ 没有改变。
结论
使用 chgrp 命令非常简单,但递归可能有点棘手。 我们希望您喜欢本教程! ?