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

  • 相关阅读:
    swift5.x for-in, switch语句
    swift5.x 数组(Array)的基本操作
    OC NSDictionary的属性一般为什么要设置为copy
    iOS APP 从编译到运行
    重装win10系统之后,如何使用之前的虚拟机
    [Delphi]接口认识
    [QPlugins]学习大纲
    [QPlugins]概述
    [转发]Oauth 1.0 1.0a 和 2.0 的之间的区别有哪些?
    [Delphi] Webbroker ISAPI 示例说明
  • 原文地址:https://www.cnblogs.com/breezey/p/6663598.html
Copyright © 2020-2023  润新知