zoukankan      html  css  js  c++  java
  • python使用pwd和grp操作unix用户及用户组

    1、pwd模块

    pwd模块提供了一个unix密码数据库即/etc/passwd的操作接口,这个数据库包含本地机器用户帐户信息

    常用操作如下:

    pwd.getpwuid(uid):返回对应uid的示例信息

    示例:

    >>> 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的用户信息

    示例:

    >>> 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():返回所有的用户信息

    示例:

    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')

    2、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():返回所有的组信息

  • 相关阅读:
    用django搭建自己的博客
    python模块调用
    python常用函数
    ubuntu不能访问windows中的文件
    更改ubuntu下mysql的密码
    重拾代码,加油
    java 接收 char字符型
    Git基础
    flask中'bool' object has no attribute '__call__'问题
    基于python的flask的应用实例注意事项
  • 原文地址:https://www.cnblogs.com/breezey/p/6663598.html
Copyright © 2011-2022 走看看