gue*_*tli 13 python file-permissions
shutil的文档告诉我:
即使是更高级别的文件复制功能(shutil.copy(),shutil.copy2())也无法复制所有文件元数据.在POSIX平台上,这意味着文件所有者和组以及ACL都会丢失
如果我需要在python中复制文件,如何保留文件所有者和组?
该进程以root身份在linux上运行.
更新:我们不使用ACL.我们只需要保留使用tar和rsync等工具保存的东西.
您可以使用该subprocess模块:
from subprocess import Popen
p = Popen(['cp','-p','--preserve',src,dest])
p.wait()
Run Code Online (Sandbox Code Playgroud)
我是这样做的:
import os
import stat
import shutil
def copyComplete(source, target):
# copy content, stat-info (mode too), timestamps...
shutil.copy2(source, target)
# copy owner and group
st = os.stat(source)
os.chown(target, st[stat.ST_UID], st[stat.ST_GID])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10720 次 |
| 最近记录: |