跳转至

利用批处理脚本给当前文件夹下的所有文件按照顺序进行重命名

有时候我们在网上下载下来的电视剧或者网课每集的名字里都带着乱七八糟的广告,导致我们想要看具体第几集的时候很难找到。基于以上痛点我写了个小小的批处理脚本来给当前文件夹下的所有文件按照顺序进行重命名,接下来请跟我一步一步实现它吧!

第一步:在需要重命名的文件夹下新建空白 .txt 文件。

第二步:将以下代码复制到新建的 .txt 文件中并保存。

@echo off
setlocal enabledelayedexpansion

:: 获取当前批处理文件的名称
set "batfile=%~nx0"

:: 初始化计数器
set /a counter=1

:: 遍历当前文件夹中的所有文件
for %%f in (*.*) do (
    :: 跳过当前批处理文件
    if "%%f" neq "%batfile%" (
        :: 格式化计数器为三位数
        set "newname=000!counter!"
        set "newname=!newname:~-3!"
        :: 获取文件扩展名(如果有)
        set "ext=%%~xf"
        if "!ext!"=="" set "ext="
        :: 生成精确到毫秒的时间戳
        for /f "delims=" %%a in ('powershell -Command "Get-Date -Format \"yyyyMMdd_HHmmssfff\""') do set "timestamp=%%a"
        :: 重命名文件
        ren "%%f" "!newname!_!timestamp!!ext!"
        :: 增加计数器
        set /a counter+=1
    )
)

echo 完成重命名!

第三步:将这个新建的文件后缀名 .txt 改为 .bat 并保存。

第四步:双击这个 .bat 结尾的文件,稍等一会发现所有文件重命名完成。

  • 注意:为了避免不同文件夹下的文件名称重复,在给每个文件命名的时候生成了带有毫秒级的时间戳后缀,确保这个名称是独一无二的。

第五步:删除这个 .bat 结尾的文件,大功告成!