Linux 是否有列出所有 Unix 组名称的命令?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/14059916/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-06 18:08:40  来源:igfitidea点击:

Is there a command to list all Unix group names?

linux

提问by cavila

I know there is the /etc/groupfile that lists all users groups.

我知道有一个/etc/group文件列出了所有用户组。

I would like to know if there is a simple command to list all user group names in spite of parsing the world readable /etc/groupfile. I am willing to create an administrator web page that lists Linux accounts' group names.

我想知道是否有一个简单的命令来列出所有用户组名称,尽管解析了世界可读/etc/group文件。我愿意创建一个列出 Linux 帐户组名称的管理员网页。

采纳答案by Arpit

To list all local groups which have users assigned to them, use this command:

要列出分配有用户的所有本地组,请使用以下命令:

cut -d: -f1 /etc/group | sort

For more info- > Unix groups, Cut command, sort command

有关更多信息-> Unix 组剪切命令排序命令

回答by dasup

If you want all groupsknown to the system, I would recommend using getent groupinstead of parsing /etc/group:

如果您希望系统知道所有组,我建议使用getent group而不是解析/etc/group

getent group

The reason is that on networked systems, groups may not only read from /etc/groupfile, but also obtained through LDAP or Yellow Pages (the list of known groups comes from the local group file plus groups received via LDAP or YP in these cases).

原因是在网络系统上,组不仅可以从/etc/group文件中读取,还可以通过 LDAP 或黄页获取(在这些情况下,已知组列表来自本地组文件加上通过 LDAP 或 YP 接收的组)。

If you want just the group names you can use:

如果你只想要组名,你可以使用:

getent group | cut -d: -f1

回答by kenorb

On Linux, macOS and Unix to display the groups to which you belong, use:

在 Linux、macOS 和 Unix 上,要显示您所属的组,请使用:

id -Gn

which is equivalent to groupsutility which has been obsoleted on Unix (as per Unix manual).

这相当于groups在 Unix 上已经过时的实用程序(根据Unix 手册)。

On macOS and Unix, the command id -pis suggested for normal interactive.

在 macOS 和 Unix 上,id -p建议使用该命令进行正常交互。

Explanation of the parameters:

参数说明:

-G, --groups- print all group IDs

-n, --name- print a name instead of a number, for -ugG

-p- Make the output human-readable.

-G, --groups- 打印所有组 ID

-n, --name- 打印名称而不是数字,用于-ugG

-p- 使输出可读。