GNU/Linux >> Tutoriales Linux >  >> Linux

Python:cómo obtener ID de grupo de un nombre de usuario (como id -Gn)

Lo siguiente funciona asumiendo que solo está interesado en usuarios locales, no funcionará para cosas como sssd respaldado por un servidor de catálogo (por ejemplo, ldap ).

#!/usr/bin/env python

import grp, pwd 

user = "myname"
groups = [g.gr_name for g in grp.getgrall() if user in g.gr_mem]
gid = pwd.getpwnam(user).pw_gid
groups.append(grp.getgrgid(gid).gr_name)
print groups

Si desea los grupos del usuario actual.

import os, grp
[grp.getgrgid(g).gr_name for g in os.getgroups()]

os.getgroups() devuelve la lista de gids del usuario actual.

grp.getgrgid(g) devuelve detalles sobre un grupo


Linux
  1. Cómo obtener el ancho de la ventana de la consola de Linux en Python

  2. ¿Cómo se reemplaza el texto similar a sed con python?

  3. Cómo obtener formato de fecha y hora en python

  4. Cómo obtener el tamaño de tar.gz en un archivo (MB) en python

  5. ¿Cómo obtener el nombre de usuario en C/C++ en Linux?

Cómo instalar Python en Linux

Cómo obtener la fecha y hora actuales en Python

Cómo obtener el uso de la CPU de un solo proceso en Linux

Cómo hacer que un script de Python se ejecute como un servicio o demonio en Linux

Cómo obtener el número de serie del disco duro usando Python

Ubuntu, cómo configurar una nueva máquina como una existente