尝试将具有特定扩展名的文件从源文件夹复制到目标文件夹

我正在测试一种将扩展名为'.yaml'的所有文件从一个文件夹(以及所有子文件夹)复制到另一个文件夹的想法。我想出了下面的代码。

import os
import shutil

src = 'C:\\Users\\ryans\\OneDrive\\Documents\\GitHub\\Pipeline\\'
dest = 'C:\\Users\\ryans\\OneDrive\\Desktop\\AllYAML\\'

#src_files = os.listdir(src)

for root, dirs, files in os.walk(src):  
    for filename in files:
        full_file_name = os.path.join(src, filename)
        if (os.path.isfile(full_file_name)):
            if full_file_name.endswith('.yaml'):
                shutil.copy(full_file_name, dest)

在大多数情况下,这似乎是正确的,但它只是将两个扩展名为“ .yaml”的文件从源复制到目标。所有文件夹和子文件夹中都有大约130个文件,因此我知道这里不对,但我不十分清楚问题出在哪里。任何帮助,将不胜感激。

谢谢!

吹牛

您应该将文件路径与文件名结合起来,而不是将起始路径与文件名结合起来。

更改:

full_file_name = os.path.join(src, filename)

至:

full_file_name = os.path.join(root, filename)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

文件复制到只有当文件已经存在目标文件夹。但源文件具有不同的文件扩展名

AppleScript - 将所有文件/文件夹从源文件夹复制到目标文件夹

将特定扩展名的文件批量复制到文件夹

如何将包含具有特定扩展名的文件的文件夹移动到目标文件夹?

将具有扩展名的Excel列表中的文件复制到其他文件夹

将文本文件中列出的特定文件从源文件夹复制到目标文件夹

将1个最新的扩展MDB文件从源文件夹复制到WIN 2000的目标文件夹

将文件(特定扩展名)从文件夹结构复制到另一个文件夹

如何将一个文件夹中的所有文件复制到另一个文件夹并更改扩展名?

将文件复制到目标文件夹并删除任何不在源文件夹中的文件?

Maven将源文件复制到文件夹

将2个最新的文本文件从源文件夹复制到目标文件夹

Apache Camel将文件从多个源文件夹复制到多个目标文件夹

将远程源文件复制到远程目标文件夹

将文件复制到相应的目标文件夹

脚本可在多个文件夹中移动并将仅具有特定扩展名的文件复制到另一个文件夹

将文件名从一个文件夹复制到另一个文件夹,同时保留原始扩展名

将带有 scss 扩展名的文件复制到 dist 文件夹中的相同路径

将子目录中的文件复制到只有 1 个文件扩展名的临时文件夹

根据父文件夹重命名每个文件时,仅复制具有特定扩展名的文件

批处理文件以将文件从文件夹内的特定子文件夹复制到目标文件夹

将文件夹中的所有内容复制到两个文件目标文件夹中

将文件从多个文件夹复制到新文件夹-文件具有相同的名称

复制包含具有给定扩展名的文件的所有文件夹

如何遍历文件夹中的文件以移动具有特定扩展名的每个文件

如何删除特定文件夹中具有特定扩展名的所有文件?

使用保留的文件夹树结构复制具有指定扩展名的文件

将文件复制到文件夹在父目录中具有相同的名称和不同的扩展名

在具有特定扩展名的所有文件夹和子文件夹中运行命令