将文件批量复制到新目录

时间:2020-03-02 22:41:43

标签: python

我有很多媒体要大量复制。源文件将所有文件放在一个目录中,但是我想将它们复制到一个以文件名作为目录名的目录中。这些目录都不存在(“ / Downloads / Media / Movies”确实存在),因此我试图使用此脚本来创建目录并复制文件。当我运行此脚本时,它认为目标存在并且没有创建文件夹,然后似乎只是跳过了文件复制部分。关于我做错了什么建议?

import os
from shutil import copyfile
from pathlib import Path

for subdir, dirs, files in os.walk('/Volumes/MyExternalDrive/Videos/Movies'):
    for file in files:
        if file.endswith(('.avi', 'mp4', 'mkv', 'm4v')):
            print('Working on ' + file)
            dirname = '/Downloads/Media/Movies/' + os.path.splitext(file)[0]
            filename = dirname + '/' + file
            if not os.path.exists(dirname):
                os.makedirs(dirname)
            copyfile(os.path.join(subdir, file), filename)

0 个答案:

没有答案