1

我一直在谷歌搜索这个问题无济于事。我想在 osx 终端中仅列出属于特定组的用户而没有无关数据,我认为 dscl 实用程序能够做到这一点,但到目前为止,如果它确实能够做到,我一直无法制定正确的命令一种行为。

4

3 回答 3

5

查询本地组:

$ dscl . -read /groups/<groupname> | grep GroupMembership
于 2011-06-30T18:03:23.710 回答
3
dscacheutil -q group -a name staff

或者

dscacheutil -q group -a name admin 

等等……明白了吗?

于 2012-07-10T01:20:45.607 回答
0

使用这个 shell 函数,它调用dsmemberutil checkmembership每个用户。例如:members everyone。(来源:https ://superuser.com/questions/279891/list-all-members-of-a-group-mac-os-x )

members () { dscl . -list /Users | while read user; do printf "$user "; dsmemberutil checkmembership -U "$user" -G "$*"; done | grep "is a member" | cut -d " " -f 1; }; 

members <group>

其他使用dscl . -readand的方法dscacheutil是不完整的。例如:

dscl . -read /groups/everyone | grep GroupMembership
dscacheutil -q group -a name everyone

不列出任何用户,而 shell 函数会列出。

于 2016-06-06T18:38:08.633 回答