Sé que hay un /etc/grouparchivo que enumera todos los grupos de usuarios.
Me gustaría saber si hay un comando simple para enumerar todos los nombres de grupos de usuarios a pesar de analizar el /etc/grouparchivo legible en todo el mundo . Estoy dispuesto a crear una página web de administrador que enumere los nombres de los grupos de cuentas de Linux.

Respuestas:
Para enumerar todos los grupos locales que tienen usuarios asignados, use este comando:
Para más información-> Grupos de Unix , comando Cortar , comando ordenar
fuente
cutes otro comando que extrae la columna específica de una entrada. Aquí estoy extrayendo el campo 1 donde los campos están delimitados por:Si desea que todos los grupos sean conocidos por el sistema, recomendaría usar en
getent grouplugar de analizar/etc/group:La razón es que en los sistemas en red, los grupos no solo pueden leer
/etc/grouparchivo, sino también obtenerlos a través de LDAP o Páginas Amarillas (la lista de grupos conocidos proviene del archivo de grupo local más los grupos recibidos a través de LDAP o YP en estos casos).Si desea solo los nombres de grupo que puede usar:
fuente
getent group | cut -d: -f1 | sortgetent group | cut -d: -f1 | sort | cat -n.En Linux, macOS y Unix para mostrar los grupos a los que pertenece, use:
que es equivalente a la
groupsutilidad que ha quedado obsoleta en Unix (según el manual de Unix ).En macOS y Unix,
id -pse sugiere el comando para la interacción normal.Explicación de los parámetros:
fuente
id -Gn someusernamedevuelve la lista de grupos para el usuario especificado.id -Gnz | xargs -0 -I% echo %enumerará cada grupo en una línea separada. Esto es útil si los nombres de los grupos tienen espacios en ellos.groupsobsoleto? Alguna fuente? Busqué "comando de grupos de Unix obsoleto" pero no encontré nada.groups.