查找分配给用户的组数

查找分配给用户的组数

有没有办法找到 Linux 中分配给用户的组数?

 as of right now i have:
 foo : foo bar apple users

我使用的某个应用程序可能为用户提供了一组“苹果用户”,但我无法分辨,当我运行

 groups foo | awk {print $6}

我收到了

 users

我不知道如何知道我有多少用户

答案1

返回groups您的帐户所在组的列表,您可以使用以下命令:

groups | wc -w

wc -w计算 返回的单词数groups

答案2

groups 命令不考虑输出中带有空格的组。因此,名称中带有空格的组的输出与两个单独的组相同。

我会这样做:

 grep "apple users" /etc/group

这应该返回类似

 apple users:x:1010:fred,barney,dino

答案3

方法 1:

foo : foo bar apple 用户 (用户名 -> foo)

运行 => lid foo | wc -l

输出:4

方法 2:

运行 => 组用户名

输出:用户名:用户名组1组2

=> 组用户名 | wc -w | xargs -I % expr % - 2

输出:3(用户所属组的数量)

foo :foo bar 苹果用户

运行 => 组 foo | wc -w | xargs -I % expr % - 2

输出:4

计算 groups 返回的单词数,然后减去 2,因为我们得到的计数中有多余的 'username' 和 ':'。最后,我们得到了用户所属的组总数!

相关内容