鱼C论坛

 找回密码
 立即注册
查看: 2758|回复: 7

[技术交流] 遍历目录,搜索指定文件,复制文件到指定目录

[复制链接]
发表于 2020-5-16 10:39:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#coding=utf-8

import os
import pathlib
import re
import shutil
# import gol

def check_dir(des_path):
    my_dir = pathlib.Path(des_path)
    if my_dir.is_dir():
        return 0
    else:
        print('{}目录不存在\n正在创建文件夹')
        os.mkdir(des_path)

#搜索文件目录
test_path = r'd:\gin\c'
#复制到指定目录
des_path = r'd:\gin\test_16'

#存储文件
_clist = []
temp = []

if check_dir(des_path) == 0: print('[{}]目录已经存在'.format(des_path))
else: check_dir(des_path)

for root,dirs,files in os.walk(test_path):
    # print('当前目录为:',root)
    # print('当前目录下的子目录为:',dirs)
    for each_file in files:
        #将以.c结尾的文件添加到列表
        temp=re.findall('.*\.c,os.path.join(root,each_file))
        if temp != []: _clist.append(temp)

# os.chdir(des_path)
for each_file in _clist:
    print('copy :',*each_file,'--->',des_path)
    #复制文件
    shutil.copy(*each_file,des_path)
    
print('Done!')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-5-16 13:14:01 From FishC Mobile | 显示全部楼层
WOW,更新了诶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-16 13:40:39 From FishC Mobile | 显示全部楼层
参观
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-5-16 16:39:07 | 显示全部楼层
学习笔记呢!@_2_ @hrp
Python的轮子太多了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-5-16 17:15:17 From FishC Mobile | 显示全部楼层
Cool_Breeze 发表于 2020-5-16 16:39
学习笔记呢!@_2_ @hrp
Python的轮子太多了!

从来没写过笔记
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-5 18:32:06 From FishC Mobile | 显示全部楼层
Cool_Breeze 发表于 2020-5-16 16:39
学习笔记呢!@_2_ @hrp
Python的轮子太多了!

建议改为:
前 人 栽 树,后 人 乘 凉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-10-5 22:03:07 | 显示全部楼层
_2_ 发表于 2020-10-5 18:32
建议改为:
前 人 栽 树,后 人 乘 凉

前几个月写的,现在看感觉有些不好意思(代码太烂了)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-12-10 11:33:48 | 显示全部楼层
文件查找:
# coding=utf-8


import re
import os

# 匹配文件
def searchFile(name):
    return re.compile(r'.*\.py).search(name)
    # return bool(re.compile(r'.*\.py).search(name))

# 查找文件
def findFile(dirName):
    results = []
    for root, dirs, files in os.walk(dirName):
        for n in filter(searchFile, files):
            results.append(os.path.join(root, n))
    for n in results:
        print(n)
    return results

if __name__ == '__main__':
    findFile('d:/gin/py')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-17 03:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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