Python-将文件夹复制到另一个位置而不使用distutils

时间:2013-11-07 12:29:44

标签: python

我正在遍历包含大量文件夹的目录。我想将这些文件夹中的每一个从src复制到dest

我尝试过使用shutil's copytree,但是存在涉及覆盖现有文件夹的问题。我看到解决方案是使用disutils,但是我无法下载disutils,因为我的工作计算机阻止安装新软件包,pip安装似乎也不起作用。

是否有使用默认包的替代解决方案?

以下是代码,以便您了解我与之合作的内容:

import os
from os.path import join 
import shutil


def main():

    directory = "Daily_Completed_Surveys"
    for root, dirs, files in os.walk(directory):
       for i in dirs:
            if "POP" in i:
                src = os.path.join(root, i)
                dest = "C:\ALLPOP"
                shutil.copytree(src, dest)

Daily_Completed_Surveys文件夹包含/ [somedate] / POP [ComputerID] [SomeDate] / [zipped files]

等结构

我希望将每个文件夹标记为POP并将其复制到目标目录。 (文件夹本身和数据,而不仅仅是压缩数据)我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以检查src中的dest目录是否存在,如果是,请使用dest将其从shutil.rmtree()删除,然后使用{{1复制目录及其内容。

此外,无法使用shutil.copytree()有点糟糕。如果您拥有外部世界的代理,您可以使用

完成该操作
pip