【发布时间】:2018-02-23 03:46:10
【问题描述】:
我正在尝试将目录复制到新位置。当它到达新位置时,我希望新目录的最后修改日期是它被复制到新位置的时间。
查看文档(https://docs.python.org/3/library/shutil.html我使用的是 python 3.6),shutil.copytree 采用默认参数“copy_function”,即“shutil.copy2”,以便维护大多数元数据(如修改日期)。但是将其更改为“shutil.copy”,即:
shutil.copytree(src, dst, symlinks=False, ignore=None, copy_function=shutil.copy, ignore_dangling_symlinks=False)
似乎仍保持原始文件的修改日期。尽管根据文档,shutil.copy() 不应该维护超出文件权限的元数据。
有趣的是,观察副本的目的地,我可以看到该目录暂时将其修改日期设置为当前时间,然后恢复为源目录的修改日期。
提前感谢您的帮助。
【问题讨论】:
-
你可能是
shutil.copyfile而不是shutil.copy。 -
@Waylan 我试过使用
shutil.copytree(src, dst, symlinks=False, ignore=None, copy_function=shutil.copyfile, ignore_dangling_symlinks=False),但结果相同