1

我正在尝试做这样的事情:

假设有 4 个用户登录到一台 UNIX 机器,a、b、c 和 d。

现在,要获取这些人所属的组,我必须输入:

groups a b c d.

我想知道的是,是否有一种方法who | groups可以将当前登录的用户通过管道传输到组命令,然后打印出所有用户及其组信息。但是,这似乎并没有按预期工作 - 相反,上面的命令只是给出了第一个用户所属的组。

4

4 回答 4

2

在 bash、zsh 等中:

groups $(who | cut -d' ' -f 1)
于 2010-10-07T00:15:29.427 回答
1

虽然我没有检查过这个:

who -q | xargs -o groups

但是您应该可以为此使用 xargs

于 2010-10-07T00:20:58.883 回答
0
groups $(who -q)|head -n -1
于 2010-10-07T00:29:20.640 回答
0
who | while read -r user line; do echo "$user $line" -- `groups $user`; done

这将输出带有组的“who”命令

于 2010-10-07T00:36:47.573 回答