如何使用python修改文件访问控制列表?

时间:2016-04-08 10:17:46

标签: python acl access-control chmod

我有一个脚本在python中执行一大堆文件操作,但是我遇到了麻烦,因为我经常遇到ACL设置为“group:everyone deny delete”之类的文件。

对于其他权限问题,我使用os.chmod来修复问题,但无法使用此方法或其他方法找到删除或修改ACL的方法。

1 个答案:

答案 0 :(得分:0)

macOS 上,您可以直接调用chmod

# exceptions: 
#   subprocess.CalledProcessError:
#       Command '['chmod', '-h', '-a', 'everyone deny delete', 
#                 '/Users/liviu/Music']' returned non-zero exit status 1
if 0:
    subprocess.check_call(['chmod', '-h', '-a', 'everyone deny delete', os.path.expanduser('~/Music')])

proc = subprocess.Popen(['chmod', '-h', '+a', 'everyone deny delete', os.path.expanduser('~/Music')])
proc.communicate()

我想 Unix-es 上有等效的命令行。
现在, Windows 是另外一回事了,但是您始终可以指望PowerShell