如何在OSX中列出属于某个组的用户?

时间:2011-06-10 11:54:09

标签: osx-snow-leopard usergroups

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

3 个答案:

答案 0 :(得分:5)

要查询本地组:

$ dscl . -read /groups/<groupname> | grep GroupMembership

答案 1 :(得分:3)

dscacheutil -q group -a name staff

dscacheutil -q group -a name admin 
等等......得到它?

答案 2 :(得分: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 . -readdscacheutil的其他方法不完整。例如:

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

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