Python 编程 · 2013/02/20 0

Function chown for Python

Python 中的 os package 提供的 os.chown 只能针对 uid 和 gid 修改path的所属用户和群组.
如果需要通过, username 用户名 和 groupname 用户组名来实现chown 就需要另辟蹊径了, 函数如下:

import os
from pwd import getpwnam
from grp import getgrnam


def chown(path, uname, gname):
    """修改路径所属权限"""
    uid = getpwnam(uname).pw_uid
    gid = getgrnam(gname).gr_gid
    os.chown(path, uid, gid)

这样就可以通过用户名和分组名修改用户权限了, 当然其中并没有判断用户名和用户组名是否存在, 需要注意