python使用pwd和grp操做unix用戶及用戶組

一、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():返回全部的組信息

相關文章
相關標籤/搜索