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

Posted pythonzhichan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python:如何获取一个用户名的组ID相关的知识,希望对你有一定的参考价值。

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黑洞网,博客园同步更新

以上是关于Python:如何获取一个用户名的组ID的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Active Directory 中获取用户的组? (c#, asp.net)

Python Flask:跟踪用户会话?如何获取会话 Cookie ID?

如何获取分组列具有最大值的组

如何从未确定的组中获取第一个值

如何计算 R 中多列的组内百分比变化?

如何使用python获取gmail的ID