如何根据按文件名清单搜索复制文件列表批量搜索文件?

老板给了我一个文件列表中,只有关键词,让我在一堆文件中把这些带有关键词的挑出来,并且统计关键词出现的次数。我先做了类似的文件测试一下,一个名为filename的excel表又做了一个文件夹接下来运行代码import os
import numpy as np
import pandas as pd
import shutil
file_path='/home/disk/yh_test/myfiles'
#文件路径
filename_path='/home/disk/yh_test/filename.xlsx'
#文件列表
filelist=os.listdir(file_path)
#获取文件夹中的文件名称
file_name=pd.read_excel(filename_path)
#读取所需文件列表
file_name['count']=0
#定义新的一列count,用于计数
for file in filelist:
m=file_name.shape[0]
#表格的行数
olddir=os.path.join(file_path,file) #每一个文件路径
for i in range(m):
if str(file_name['name'][i]) in file:
#寻找对应的文件名
F="/home/disk/yh_test/myfiles_filter/"
#新文件夹名称(先建好)
newdir=os.path.join(F,file)
shutil.copy(olddir,newdir)
#复制到新文件夹中
file_name['count'][i]=file_name['count'][i]+1
#计数
print(file)
#打印出文件名,其实我是为了看它是不是在运行
else:
continue
file_name.to_excel('file_name_count.xlsx')
#保存新的文件列表
运行结果如下:新的文件夹myfiles_filter中文件是这样的:有关键字的文件都被复制过来了。新的列表里就有关键字出现的次数。}
比如,从下面的文件夹中找出第一个以file_1_1开头的txt文件(文件名按字母顺序排序)代码可以这样写@echo off
setlocal enabledelayedexpansion
set path=D:\Workspace\Test\Data
for /f "delims=" %%i in ('dir /a-d /b /on %path%\file_1_1*.txt') do (
set filename=%%i
goto next
)
:next
echo %filename%转载于:https://www.cnblogs.com/urwlcm/p/4435800.html
阅读终点,创作起航,您可以撰写心得或摘录文章要点写篇博文。去创作
博客之星–博主的年度最高成就表彰活动成为博客之星不仅可获博客之星专属荣誉还可获博客之星年度大奖,一年仅有一次。
去创作
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
成就一亿技术人!
hope_wisdom 发出的红包
实付元使用余额支付
点击重新获取
钱包余额
0
抵扣说明: 1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。余额充值
}

我要回帖

更多关于 按文件名清单搜索复制文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信