找到匹配文件夹然后复制文件和子文件夹

时间:2012-02-23 18:02:54

标签: python copy directory subdirectory

我是Python的新手并且想要执行任务...我需要比较来自两个文件夹dirfolder1和dirfolder2的文件夹名称...比较它们中的文件夹以及它们是否匹配...复制文件和子文件夹里面匹配文件夹...

感谢您的帮助。

Daddih。

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

import os, shutil

dir1 = r'/path/to/dir/1'
dir2 = r'/path/to/dir/2'
copy_dest = r'/path/to/copy/dirs/to'

dir1_folders = [dir for dir in os.listdir(dir1) if os.path.isdir(os.path.join(dir1, dir))]
dir2_folders = [dir for dir in os.listdir(dir2) if os.path.isdir(os.path.join(dir2, dir))]

for dir in dir1_folders:
    if dir in dir2_folders:
        shutil.copytree(os.path.join(dir1, dir), os.path.join(copy_dest, dir))

基本上,遍历每个目录,创建其子目录列表,比较它们,并为匹配,将它们(使用copytree以防有任何子目录)复制到第三个位置。