欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python:如何获取一个用户名的组ID

程序员文章站 2022-03-25 22:03:09
getpwname只能得到gid一个username。 getgroups只能获取groups脚本用户。 我怎么能得到所有groups的任意一个username,比如id -Gn命令? 解决方案 本文首发于Python黑洞网,博客园同步更新 ......

getpwname只能得到gid一个username

import pwd
mygroupid = pwd.getpwnam(username).pw_gid

getgroups只能获取groups脚本用户。

import os
mygroupids = os.getgroups()

我怎么能得到所有groups的任意一个username,比如id -gn命令?

id -gn `whoami`

 

解决方案


 

#!/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

本文首发于python黑洞网,博客园同步更新