有一个列出所有Unix组名的命令吗?

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

我想知道是否有一个简单的命令列出所有的用户组名称,尽pipeparsing世界上可读的/etc/group文件。 我愿意创build一个列出Linux账号组名的pipe理员网页。

你试过这个命令吗?

 groups 

整个组列表使用

 cut -d: -f1 /etc/group 

有关更多信息 – > Unix组 切割命令

如果你想让系统知道所有组 ,我build议使用getent而不是parsing/etc/group 。 在联网的系统上,组不仅可以从/ etc / group文件读取,还可以通过LDAP或黄页获得,即已知组的列表来自本地组文件加上通过LDAP或YP接收的组。

getent group会给你一个与/ etc / group-file使用的格式相同的所有组的列表。

如果你只想要组名, getent group | cut -d: -f1 getent group | cut -d: -f1会做这个工作(和上面一样)。

在Linux / OS X / Unix上显示您所属的组,使用:

 id -Gn 

这相当于在Unix上已经过时的groups实用程序。

在OS X / Unix上,build议使用命令id -p进行正常的交互。

参数说明:

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

-n ,–name – 为-ugG打印一个名字而不是数字

-p – 使输出可读。