吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 223|回复: 6
上一主题 下一主题
收起左侧

[经验求助] 批量提取文件

[复制链接]
跳转到指定楼层
楼主
pp67868450 发表于 2024-11-27 11:09 回帖奖励
200吾爱币
批量按文件夹名称进行提取文件
https://www.picgo.net/image/%7DF ... 40%29U%40DX6.WoQNPl
图中标线的为需要提取的文件,需要保留原目录结构,本层文件夹保留,数据比较多

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

沙发
平淡最真 发表于 2024-11-27 11:09
[Asm] 纯文本查看 复制代码
@echo off
for /f %%a in ('dir /b/ad') do (
	for  %%i in (DR IRI LBI RIFile) do (
	robocopy .\%%a\%%i C:\Users\Admin\Desktop\222\%%a\%%i\ /E
)
)
pause
3#
tantanxin147 发表于 2024-11-27 11:30
4#
黑色蓝柠檬 发表于 2024-11-27 11:38
5#
 楼主| pp67868450 发表于 2024-11-27 11:41 |楼主

展开说说
6#
MQ19781011 发表于 2024-11-27 12:00
以前只提取过文件名称。
7#
黑色蓝柠檬 发表于 2024-11-27 12:05
[Python] 纯文本查看 复制代码
import os
import shutil
import fnmatch
import tkinter as tk
from tkinter import filedialog
def choose_directory():
    
    root = tk.Tk()
    root.withdraw()
    
    directory = filedialog.askdirectory()
    
    return directory
def copy_folders_with_name(root_dir, target_dir, folder_name_pattern):
    
    if not os.path.exists(target_dir):
        os.makedirs(target_dir)
    
    for dirpath, dirnames, filenames in os.walk(root_dir):
        
        for dirname in dirnames:
            for folder_name in folder_name_pattern:
                if fnmatch.fnmatch(dirname, folder_name):
                    
                    source_folder_path = os.path.join(dirpath, dirname)
                    
                    relative_path = os.path.relpath(source_folder_path, root_dir)
                    target_folder_path = os.path.join(target_dir, relative_path)
                    
                    if not os.path.exists(os.path.dirname(target_folder_path)):
                        os.makedirs(os.path.dirname(target_folder_path))
                    
                    shutil.copytree(source_folder_path, target_folder_path)
selected_directory = choose_directory()
print("源文件路径:", selected_directory)
root_directory = selected_directory
selected_directory = choose_directory()
print("提取保存路径:", selected_directory)
target_directory = selected_directory
folder_name_to_copy = ['DR',"IRI","LBI","RIFile"] 
copy_folders_with_name(root_directory, target_directory, folder_name_to_copy)

首先创建你需要保存的新的文件路径,第一次弹窗选择文件夹为你的源文件路径,第二次选择你的创建的新的文件路径,脚本会自动将你所有源文件路径你划线文件名按照源文件目录构成复制到新文件路径。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 10:18

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表