批量重命名文件名称

        不知道大家工作中是否碰到过需要批量重命名的情况,我是遇到了,情况是我们在做一个人脸识别的项目,收集上来的文件名各种各样,系统有设置了批量导入照片的功能,但需要名称是对应系统里面的ID号。几千张照片,一张张处理那可以相当麻烦的事,后面想到的办法主要通过批处理和EXCEL来完成,主要以下三个步骤:
第一步,导出系统中用户的ID
第二步,读取照片的文件名,还好基本照片上有姓名,所以用姓名进行匹配
第三步,把匹配出来的ID批量给文件重命名
大家有什么好的方法也可以在评论区留言分享一下。

以下是操作的具体过程:
1、把系统中用户的姓名和ID导出会,先放到excel表格中

2、批量读取文件夹内的照片文件名,这里可以使用批处理
1)首先新建一个.txt的文件文件,这边就随便命名为1.txt了

2)打开这个1.txt文件,输入:DIR *.* /B> 2.TXT,然后保存退出

3)把.txt扩展名修改为.bat

4)双击运行.bat文件后,就会生成2.txt文件,里面就是读取的所有文件夹内的所有文件了。

5)把里面的内容也全部复制到excel文件内。

3、到这一步,所有的照片名称都读取出来了,还有系统的姓名和ID也有了,

然后,第一步我要先把读取出来的文件名只保留姓名,还是按文件名的顺序排列下来,这样后面匹配了id后,才能对应上是哪一个,所以我用的是sublime处理的,你们可以看用什么方法,如果不清楚怎么用sublime处理,我后面再另外写个文章介绍。

处理完之后就像下面这样子。

这里可能要注意看有没有姓名一样的,可以用excel的重复项筛选一下,把重名的先去掉,后面单独处理。

接着用vlookup函数,对姓名进行一下匹配,匹配对应的ID。

OK,匹配后,姓名和ID就对应上了。

好了,到这一步,ID和文件名对应上了,接下来就是用批处理批量把文件重命名为对应的ID就行了。

1)匹配出来的id是没有扩展名的,所以先在ID后面那一列,加上.jpg

2)然后把id和扩展名这两列复制出来,放到一个文件文件内,把中间的空格替为空

3)替换完之后,把合到一起的id和扩展名再ctrl+A全选,ctrl+C复制回excel表格中

4)好了,最后就是把原文件名和新文件名排列一下,利用rename进行批量重命名就行了,按下面样子进行一下排列。

接着在需要批量修改文件名的那个文件夹下再建个文本文件,把这三列复制到一个文本文件内,保存。

把扩展名修改为.bat,然后运行,运行后就修改过来了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ax_cjj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值