Как можно перечислить пользователей, принадлежащих к группе в OSX? - PullRequest
1 голос
/ 10 июня 2011

Я прибегаю к этой проблеме, но безрезультатно.Я хочу перечислить только пользователей, принадлежащих к определенной группе без посторонних данных в терминале osx, я думал, что утилита dscl будет способна сделать это, но до сих пор я был не в состоянии составить правильную команду, если действительно она способна на такоеакт.

Ответы [ 3 ]

5 голосов
/ 30 июня 2011

Для запроса локальной группы:

$ dscl . -read /groups/<groupname> | grep GroupMembership
3 голосов
/ 10 июля 2012
dscacheutil -q group -a name staff

или

dscacheutil -q group -a name admin 

и т.д ... получите?

0 голосов
/ 06 июня 2016

Используйте эту функцию оболочки, которая вызывает 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 . -read и dscacheutil, являются неполными.Например:

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

не перечислять пользователей, в то время как функция оболочки делает.

...