我有一个目录“ Dst Directory”,里面有文件和文件夹,我有“ src Directory”,里面也有文件和文件夹。我要做的是将“ src 目录”的内容移动到“ Dst 目录”,并覆盖任何具有相同名称的文件。因此,例如,‘ Src Directory file.txt’需要移动到‘ Dst Directory’并覆盖现有的 file.txt。同样的道理也适用于某些文件夹,移动一个文件夹并将内容与“ dst 目录”中的同一个文件夹合并
我目前正在使用 shutil.move 将 src 的内容移动到 dst,但是如果文件已经存在并且不合并文件夹,它就不会这样做; 它只是将文件夹放在现有文件夹中。
更新: 为了让事情更清楚一些,我正在做的是将一个归档文件解压缩到 Dst Directory,然后将 Src Directory 的内容移动到那里并重新压缩,从而有效地更新 zip 归档文件中的文件。这将重复添加新文件或新版本的文件等,这就是为什么它需要覆盖和合并
解决: 我使用 distutils.dir _ util 解决了我的问题。Copy _ tree (src,dst) ,这会将文件夹和文件从 src 目录复制到 dst 目录,并在必要时覆盖/合并。希望这能帮到一些人!
希望你能理解, 谢谢!