首页 > 解决方案 > Python:将文件夹树中具有给定扩展名的文件复制到另一个文件夹树中:额外的子文件夹复杂性

问题描述

我有一个名为 /AAA 的目录,其中有几个名为 AAA_YYMMDD 的文件夹,其中有名为 AAA_YYMMDD.xxx 的文件,其中 xxx 是几个不同的扩展名。我正在努力寻找和调整任何可以执行以下操作的 python 代码:

目标目录是 /BBB,其中包含名为 AAA_YYMMDD 的子文件夹,与根文件夹匹配,但在每个 AAA_YYMMDD 子文件夹中还有一个名为“analysis”的附加子文件夹。

目标:在 AAA 根目录中查找所有带有 AAA_YYMMDD.xx1(一个特定扩展名)的文件,然后复制到目标 /BBB 目录但是在适当的 AAA_YYMMDD 子文件夹中复制文件是不够的,我希望这些复制的文件在里面结束/AAA_YYMMDD/analysis 子文件夹。

我发现如何根据文件名将文件移动到 python 中的特定目录? 我认为可以通过一些修改让我到达那里。但我没有管理。

import os
import shutil

destination = r"\\xxx\yyy"
target = r"\\xxx\yyy"


destination_list = os.listdir(destination)
data_dir_list = os.listdir(target)
for dirpath, dnames, fnames in os.walk(destination):    
   if not os.path.isdir(os.path.join(destination, fnames)):
       for prefix in data_dir_list:
           if fnames.endswith(".zzz"):
               shutil.copy(os.path.join(destination, fnames), os.path.join(target, prefix, fnames))

print "done copying .zzz files"

(根据要求添加了一些借来的代码)

标签: python

解决方案


推荐阅读