一、pwd模块shell
pwd模块提供了一个unix密码数据库即/etc/passwd的操做接口,这个数据库包含本地机器用户账户信息数据库
经常使用操做以下:bash
pwd.getpwuid(uid):返回对应uid的示例信息ui
示例:spa
>>> pwd.getpwuid(0) pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash')
pwd.getpwnam(name):返回对应name的用户信息pwa
示例:unix
>>> pwd.getpwnam('root') pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash')
pwd.getpwall():返回全部的用户信息code
示例:blog
import pwd def get_user() all_user = {} for user in pwd.getpwall() all_user[user[0]] = all_user[user[2]] = user return all_user def userinfo(uid): return get_user()[uid]
执行结果:接口
print userinfo(0) pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash') print userinfo('root') pwd.struct_passwd(pw_name='root', pw_passwd='x', pw_uid=0, pw_gid=0, pw_gecos='root', pw_dir='/root', pw_shell='/bin/bash')
二、grp模块
grp模块提供了一个操做unix用户组即/etc/group数据库的接口
经常使用操做以下:
grp.getgrgid(gid):返回对应gid的组信息
示例:
>>> print grp.getgrgid(0) grp.struct_group(gr_name='root', gr_passwd='x', gr_gid=0, gr_mem=[])
grp.getgrnam(name):返回对应name的组信息
示例:
>>> print grp.getgrnam('root') grp.struct_group(gr_name='root', gr_passwd='x', gr_gid=0, gr_mem=[])
grp.getgrall():返回全部的组信息