Python搜索并复制目录中的文件[关闭]

问题描述 投票:0回答:1

我是Python新手,所以请原谅我的无知。

我正在寻求创建一种在一个文本文件中搜索符合搜索条件的文件列表的方法。然后使用结果在 through/recurse 目录中搜索这些文件,并将它们全部复制到一个主文件夹中。

本质上,我有一个包含大量文件名的文本文件,我已成功搜索该文件并检索所有以“.mov”结尾的文件,并将结果打印/输出到文本文件。可能有几十个文件。

如何使用这些结果递归搜索目录并将文件复制到新位置。

或者,我是否以完全错误的方式处理这件事?

非常感谢!

python file search directory copy
1个回答
11
投票
import os, shutil

# First, create a list and populate it with the files
# you want to find (1 file per row in myfiles.txt)
files_to_find = []
with open('myfiles.txt') as fh:
    for row in fh:
        files_to_find.append(row.strip())

# Then we recursively traverse through each folder
# and match each file against our list of files to find.
for root, dirs, files in os.walk('C:\\'):
    for _file in files:
        if _file in files_to_find:
            # If we find it, notify us about it and copy it it to C:\NewPath\
            print 'Found file in: ' + str(root)
            shutil.copy(os.path.abspath(root + '/' + _file), 'C:\\NewPath\\')

如果不尝试找出自己的答案,你永远不会通过问“我该怎么做”来学会成为一名优秀的程序员。我通常建议人们把问题分解成和平..

  • Google:Python 列出目录中的文件
  • 摆弄示例代码,看看什么最有效

然后继续,

  • Google:Python 复制文件
  • 摆弄预制路径,看看是否能让逻辑工作

然后将它们结合起来。

© www.soinside.com 2019 - 2024. All rights reserved.