Python Shutil-仅针对特定文件复制文件+文件树

时间:2019-12-27 08:21:29

标签: python shutil

我正在尝试使用shutil从列表中复制文件,并将它们放在另一个目录中的同一文件夹结构中:

import os
import shutil

src = "/sourcedoc/1/"
dest = "/destdoc/"

files_to_find = []
with open('filelist.txt') as fh:
    for row in fh:
        files_to_find.append(row.strip())

for root, dirs, files in os.walk(src):
    for _file in files:
        if _file in files_to_find:
            print('Found file in: ' + str(root))
            os.makedirs(os.path.dirname(dest), exist_ok = True)
            shutil.copy(os.path.abspath(root + '/' + _file), dest + _file)

我想用与包含要在新目标中复制的文件的名称相同的名称创建文件夹,然后在其中复制文件。 最终目标是具有“ / destdoc / 1 /”之类的结构,并从列表中复制文件。但是,我得到的是目标目录中没有文件夹结构的所有文件。似乎使用shutil.copytree复制了文件夹中的所有文件。

0 个答案:

没有答案