【问题标题】:Python: Overwriting a directory with another directory containing the same filesPython:用另一个包含相同文件的目录覆盖一个目录
【发布时间】:2010-10-06 03:15:51
【问题描述】:
我正在尝试用包含相同文件的另一个目录覆盖一个目录。
我试过使用 distutils.dir_util.copy_tree(src, dst) 但它试图为 dst 创建一个目录。
目标是静默覆盖目录及其内容。
还有其他方法吗?
【问题讨论】:
标签:
python
windows
copy
overwrite
【解决方案1】:
编辑:这种繁文缛节显然没有必要;原因请参见 OP 的回答。
您可能希望首先将目标目录重命名为其他名称。如果没问题,则将源目录复制到目标目录的原始名称。然后,如果可行,请从新位置删除目标目录。
您应该首先创建一个临时目录,使用tempfile.mkdtemp 将目标目录移动到其中。
【解决方案2】:
哎呀...原来distutils.dir_util.copy_tree(src, dst) 有效。
只是我从环境变量中获取了我的目录路径,而 '\n' 卡在了我的路径后面。
在我的路径变量中添加.strip() 解决了这个问题。