将子目录中的所有文件递归移动到 Python 中的另一个目录

Recursively move all files on subdirectories to another directory in Python

标题解释了我所追求的。请注意,子目录将不包含任何目录 only files (*.JPG)。本质上,只是将文件树中的所有内容上移一层。

例如,来自 ~/someDir/folder1/*~/someDir/folder2/*、...、~/someDir/folderN/*。我想要将子目录的所有内容带到 ~/someDir/.

shutil.move 是移动文件的好选择。

import shutil
import os

source = "/parent/subdir"
destination = "/parent/"
files_list = os.listdir(source)
for files in files_list:
    shutil.move(files, destination)

对于递归移动,您可以尝试shutil.copytree(SOURCE, DESTINATION)。它只是复制所有文件,如果需要,您可以手动清理源目录。