批量重命名

一、背景

我从网上下载了一部电视剧《琅琊榜》,存放在了 E:/琅琊榜 目录下:

image-20221112194035078

但有没有发现片名好长好长,这严重影响了我的观看体验,我该怎样才能将片名中的「未删减以及2015.HD1080P........」这些冗余部分删掉呢,即我想要的片名是这样的:

image-20221112195100086

我该怎么办呢?

二、通过 bat 批量重命名

2.1 获取需要重命名的文件名

打开 cmd,并进入到 E:/琅琊榜 目录下:

image-20221112195616844

并通过指令dir /b > filename.csv提取该目录下所有文件的文件名:

image-20221112200222606

并存放于 filename.csv 文件中

image-20221112200305027

  • dir:显示当前目录下的所有文件信息
  • /b:只显示文件信息
  • >:输出重定向

需要注意的是,通过 cmd 操作的文件,编码格式为 ANSI。

2.2 获取批量重命名指令

然后,我们在 B 列输入修改后的文件名(可借助 VS Code 的「更改所有匹配项」功能轻松完成):

image-20221112200735239

并在 C1 列输入公式="ren " &"""" &A1 &"""" &" " &""""&B1&"""",并选中剩余部分按下ctrl+D

image-20221112201022654

  • &"""":引号

  • &" ":空格

  • ren:重命名指令,指令格式为 ren [源文件] [目标文件](最好将文件名用双引号括起来)

2.3 执行 ren 指令

在当前目录(E:\琅琊榜)下新建一个 rename.bat 的文件,并通过 notepad++ 将其编码格式设置为 ANSI:

image-20221112201802221

然后将 filename.csv 中 C列 的文字复制到 rename.bat 中:

image-20221112201915878

最后,双击运行「rename.bat」,接下来就是见证奇迹的时刻了:

image-20221112202024853

修改成功,并且一一对应????

参考资料