30

首先可以用python设置文件的所有者吗?如果是这样,您如何使用 python 设置文件的所有者?

4

2 回答 2

57
os.chown(path, uid, gid)

http://docs.python.org/library/os.html

uid 和 gid 可以通过以下方式从字符串中检索

import pwd
import grp
import os

uid = pwd.getpwnam("nobody").pw_uid
gid = grp.getgrnam("nogroup").gr_gid

参考:如何按名称更改目录的用户和组权限?

于 2012-05-30T14:56:37.467 回答
0

旧的,但将来可能对那些希望在 Windows 中设置文件所有者的人有所帮助。

*我还没有找到一个纯粹的“pythonic”方法,这是另一种选择:

Windows 提供了以下我们将利用的 takeown.exe 实用程序:

takeown /f folder_path /r /d Y('r' 用于递归获取树中所有文件和文件夹的所有权,'d' 用于默认输入参数,允许获取所有文件\文件夹的所有权)。更多文档:msdn docs

代码示例:

from subprocess import STDOUT, check_output
check_output(["takeown", "/f", path_, "/r", "/d", "Y"], stderr=STDOUT)
于 2018-10-05T17:32:18.447 回答