Excel+ren批处理,批量重命名文件的利器

其实不需要额外的软件,有Excel,再写个ren批处理,就能实现对大量文件的批量重命名。

基础知识

ren是什么?以前dos下的文件重命名指令,一直延续在各版本win中,在Win10的命令提示符(Win+R,cmd运行;或开始菜单中搜“命令提示符”即可打开)中,输入ren/?可得到该命令的运行参数。

基本操作是

REN [drive:][path]filename1 filename2.

比如 ren d:\temp\a.txt b.txt,就会将D盘temp文件夹下的a.txt文件重命名为b.txt文件。

应用场景

假设我们有一堆文件需要重命名,现在我们知道的,是已有文件名,以及我们想重命名的新文件名,在win资源管理器下手工一个个重命名太麻烦,又不想多下载一个软件,该怎么办?

例如,有下图F:\test文件夹下一堆命名混乱的19个txt文件,我们想把它们命名成“11月21日0001.txt“~”11月21日0019.txt“,该如何操作?

操作步骤

Step1

以Excel2021为例,打开Excel,新建一个空白工作簿。

点击工具栏的“数据”选项卡→获取数据→自文件→从文件夹。

弹出的对话框中选择目标文件夹(本例中为F盘下的test文件夹),点确定。

弹出的对话框中点“转换数据”

Step2

点击“转换数据”后,会打开Power Query编辑器,按住Ctrl,只高亮选择Name和Folder Path两列,其他列如果选上了,按住Ctrl点一下取消选择。

在选中的一个列标题上点右键,“删除其他列”。

点Power Query编辑器左上角的“关闭并上载”。

Step3

此时文件路径及文件名的信息已经进入Excel了,下一步就是编辑目标文件名(新文件名)。

在C1输入New Name,回车。C2输入“11月21日0001.txt”,拖动下拉填充,自动填充“11月21日0002.txt”~”11月21日0019.txt“。

Step4

开始编辑ren命令,在D列D1单元格输入CMD,回车。D2单元格输入:

="ren"&" "&[@[Folder Path]]&[@Name]&" "&[@[New name]]

注意一些“ “中间的空白是空格。

拖动下拉填充,即出现所有需要用到的ren命令。

Step5

在F:\test下新建一个txt文件,重新命名为rename.bat,注意扩展名必须是bat。如果资源管理器不显示扩展名,可点击资源管理器上查看选项卡,将“文件扩展名”勾选。

在刚刚新建的rename.bat上点右键,点“编辑”,打开rename.bat文件内容(目前为空)。

回到Excel,选取D列除D1单元格以外的内容,右键复制或者Ctrl+C。

在rename.bat中右键粘贴,或Ctrl+V。

文件→另存为,编码选择ANSI,其他不变,保存并覆盖。非ANSI编码,执行时中文会乱码,导致执行失败。

关闭编辑窗口。

Step6

直接双击rename.bat运行,该文件夹下的19个txt文件瞬间完成重命名。

Bingo!

当然,在此基础上,可以实现对新文件名的更多操作,自由发挥吧!

P.S. 以上操作使用Win10+Office Mondo2016完成,其他版本的Office可能命令位置有所区别,但也大同小异,可自行寻找。