Bootstrap

把U盘里文件夹的里面的所有文件都移动到根目录下面

我有多个文件存在于多个文件夹内部,并且文件夹的深度层级有2-4层,需要把文件夹里面的所有文件都移动到U盘的的根目录,所以写了一个代码实现

这个代码的最终移动的目的地也不一定需要是U盘,其他指定的文件夹目录也行,反正就是把文件夹内部的所有文件都移动到第一个文件夹下面,不要层级那么深

如果存在一次没有全部移动完,也就是有遗漏的情况,把这个程序再次运行一次就行了


# 把U盘里面的文件夹的里面的所有文件都移动到根目录下面

import os
import shutil


def move_files_recursively(src_path, dst_path):
    # 确保目标路径存在
    if not os.path.exists(dst_path):
        os.makedirs(dst_path)

    # 遍历源路径中的所有内容
    for item in os.listdir(src_path):
        item_src_path = os.path.join(src_path, item)

        # 检查当前项是文件还是文件夹
        if os.path.isfile(item_src_path):
            # 如果是文件,移动到目标路径
            item_dst_path = os.path.join(dst_path, item)
            if os.path.exists(item_dst_path):
                print(f'警告:文件 {item} 已存在,将被覆盖。')
            shutil.move(item_src_path, item_dst_path)
            print(f'文件 {item} 已移动到 {dst_path}')
        elif os.path.isdir(item_src_path):
            # 如果是文件夹,递归调用函数
            new_dst_path = os.path.join(dst_path, item)
            move_files_recursively(item_src_path, new_dst_path)


# 指定U盘的挂载路径
u_disk_path = 'G:\\'

# 遍历U盘根目录下的所有项
for item in os.listdir(u_disk_path):
    item_path = os.path.join(u_disk_path, item)

    # 检查是否为文件夹
    if os.path.isdir(item_path):
        # 对于每个文件夹,递归地移动其所有内容到U盘根目录
        move_files_recursively(item_path, u_disk_path)

print('所有文件夹中的文件已移动到U盘根目录。')

;