我有一个在 python 中执行大量文件操作的脚本,但我遇到了麻烦,因为我经常遇到 ACL 设置为“组:每个人都拒绝删除”之类的文件。
对于其他权限问题,我使用 os.chmod
来解决问题,但找不到如何使用此方法或其他方法删除或修改 ACL。
最佳答案
在 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 。
关于python - 如何使用python修改文件访问控制列表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36497111/