在youcl中,我们最近讨论了chown命令,它允许用户在Linux中更改所有者以及文件组(或目录)。 但是您知道吗,有一个专用的命令行实用程序,您可以在更改组相关信息时使用它们? 该工具是chgrp ,在本教程中,我们将使用易于理解的示例讨论此工具。
但在我们这样做之前,值得一提的是,本教程中提到的所有示例和说明都已在Ubuntu 16.04LTS上进行了测试。
Linux chgrp命令
如现在您已经了解的那样,如果要求只是更改文件或目录的组,那么可以使用chgrp而不是chown。 该工具提供了几种可在不同情况下使用的命令行选项。 这是chgrp的通用语法:
chgrp [OPTION]... GROUP FILE...
以下Q&A类型的示例应该使chgrp命令更加清晰。
Q1。 如何使用chgrp更改文件/目录组
chgrp命令的基本用法非常简单。 假设您要更改当前组为“himanshu”的文件“file1”的组。 要求是将群组所有权改为“根”。 这是我们需要在这种情况下运行的命令:
chgrp root file1
根据您当前的权限级别,您可能希望使用“sudo”运行上述命令(不知道“sudo”是什么,请阅读)。
上述截图确认组成员所有权成功更改为“root”。
Q2。 chgrp如何处理符号链接
默认情况下,chgrp命令会影响符号链接的指示。 这意味着通过该工具进行的任何更改都不会应用于符号链接,而是应用于指向的文件。 例如,考虑链接到'file1'的符号链接'file1symlink'。
'file1'和'file1symlink'都将其所有者和组设置为“himanshu”。
现在,如果您尝试更改符号链接文件组,则会看到'file1symlink'将不会受到影响,但是'file1'的组所有权会改变。
sudo chgrp root file1symlink
但是,如果需要,可以使用-h命令行选项来更改此行为。
sudo chgrp -h root file1symlink
以下屏幕截图显示了上述命令改变了此次的符号链接组:
Q3。 如何使chgrp从参考文件中选择组信息
如果需要,您可以要求chgrp命令从文件中选择组信息,从而节省您在命令行上手动指定组名称的功能。 可以通过--reference命令行选项访问此功能,该选项要求您指定引用文件的名称。
chgrp --reference=[ref-file-name] FILENAME
例如:
chgrp --reference=file2 file1
上述命令将使文件1的组所有权与file2相同。
Q4。 如何要求chgrp进行递归变更
如果在处理目录和子目录时 - 您要进行递归更改,可以使用-R命令行选项进行。
chgrp -R GROUPNAME DIRECTORY-OR-PATH
Q5。 为什么使用chgrp时,chown也可以用于更改组
人们可以争辩说,如果chown命令也可以用来调整组相关的信息,那么为什么要首先需要chgrp? 那么,首先,当你所需要做的只是改变一个文件/目录的组时,chgrp比使用简单。 其次,由于chown还能够做其他的事情,所以在使用生产服务器时,不想意外地进行更改。
结论
Chgrp不是一个难以理解和使用的命令。 我们已经涵盖了几乎所有的主要选项/功能。 尝试我们在本教程中提到的示例,您应该可以使用该命令。 如有任何疑问或疑问,请访问该工具的手册页 。