我知道有一个文件
我想知道是否有一个简单的命令可以列出所有用户组名称,而不需要解析可读的
/etc/group
列出了所有用户组。我想知道是否有一个简单的命令可以列出所有用户组名称,而不需要解析可读的
/etc/group
文件。我愿意创建一个管理员网页,以列出Linux帐户的组名称。/etc/group
列出了所有用户组。/etc/group
文件。我愿意创建一个管理员网页,以列出Linux帐户的组名称。cut
是另一个命令,它从输入中提取特定的列。在这里,我正在提取字段1,其中字段由 :
分隔。 - Arpit如果您想要系统中已知的所有组,我建议使用getent group
而不是解析/etc/group
:
getent group
原因是在网络系统中,组不仅可以从/etc/group
文件中读取,还可以通过LDAP或Yellow Pages获取(已知组列表来自本地组文件加上通过LDAP或YP接收到的组)。
如果你只想要组名,可以使用:
getent group | cut -d: -f1
getent group | cut -d: -f1 | sort
。 - user1364368getent group | cut -d: -f1 | sort | cat -n
。 - MLC在Linux、macOS和Unix上显示您所属的组,请使用:
id -Gn
这与Unix上已停用的groups
实用程序相当(根据Unix手册)。
在macOS和Unix上,建议使用命令id -p
进行正常交互。
参数解释:
-G
,--groups
- 打印所有组ID
-n
,--name
- 为-ugG
打印名称而不是数字
-p
- 使输出易于阅读。
id -Gn someusername
返回指定用户所属的组列表。 - grimid -Gnz | xargs -0 -I% echo %
将会把每个组分别列在一行上。如果组名中包含空格,这将非常有用。 - Mark Lakatatr '\0' '\n'
替代 xargs
。 - tripulse