Domanda

Sono stato Googling questo problema senza alcun risultato. Voglio elencare solo gli utenti appartenenti a un determinato gruppo senza dati estranei in terminal osx, ho pensato che il programma di utilità dscl sarebbe in grado di fare questo, ma finora sono stato in grado di mestiere il comando giusto se effettivamente è capace di una tale un atto.

È stato utile?

Soluzione

To query a local group:

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

Altri suggerimenti

dscacheutil -q group -a name staff

or

dscacheutil -q group -a name admin 

etc... get it?

Use this shell function, which calls dsmemberutil checkmembership for every user. For example: members everyone. (Source: 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>

Other methods using dscl . -read and dscacheutil are incomplete. For example:

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

do not list any users, whereas the shell function does.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top