| :cd |
| set "p=:" |
| set "hzm=:" |
| set "wjm=:" |
| set "xz=:" |
| cls |
| @echo off |
| mode con COLS=75 lines=8 |
| setlocal enabledelayedexpansion |
| title f m r 5 2 0 欢迎使用批量文件 后缀重命名 |
| color e |
| |
| echo. ╭──────────────╮ |
| echo. │欢迎使用批量文件 后缀重命名 │ |
| echo. ╰──────────────╯ |
| echo. |
| echo 1.文件重命名 0.退出 2.后缀重命名 |
| echo. ──────────────────────────────────── |
| set /p xz=(1/0/2): |
| set "xz=%xz:"=%" |
| if "%xz%"==":" goto cd |
| if "%xz%"=="1" goto 1_ |
| if "%xz%"=="0" exit |
| if "%xz%"=="2" goto 2_ |
| exit |
| :1_ |
| cls |
| echo ╔══════════╗ |
| set /p p=║要改名的目录放到这里║: |
| set "p=%p:"=%" |
| if "%p%"==":" goto 1_ |
| :hzm_ |
| cls |
| echo.╭───────────────────────╮ |
| echo.│ 输入要更改的文件名后缀,不要加小数点 (. ),│ |
| echo.│───────────────────────│ |
| echo.│ (*) 将会对该目录下的文件全部改名 │ |
| echo.╰───────────────────────╯ |
| echo.╔═══════════════════╗ |
| set /p hzm=║输入要更改的后缀名 (jpg bmp txt exe *)║: |
| set "hzm=%hzm:"=%" |
| if "%hzm%"==":" goto hzm_ |
| :wjm_ |
| cls |
| echo. |
| echo.╭──────────────────────────╮ |
| echo.│ 如不输入替换的文件名,将会把文件改成按数字顺序命名 │ |
| echo.╰──────────────────────────╯ |
| echo. ──────────────────────────────────── |
| echo.╔═════════╗ |
| set /p wjm=║输入要替换的文件名║: |
| set "wjm=%wjm:"=%" |
| cls |
| echo. |
| echo 程序正在运行中...... |
| echo. |
| echo. |
| for /f "tokens=*" %%a in ('dir/b "%p%\*.%hzm%"') do (call :rib "%%a")>nul 2>nul |
| for /f "tokens=*" %%i in ('dir/b "%p%\*.%hzm%" ^|findstr/i/v/c:"0123456789"') do (set /a |
| |
| sum+=1 |
| call title 正在更改第 %%sum%% 个文件 %%i |
| ping 1.1 /w 300<NUL |
| call :rrr "%%i")>nul 2>nul |
| cls |
| echo. |
| echo 完成!谢谢使用 |
| pause>nul |
| exit |
| :rrr |
| cd/d"%p%" |
| ren %1 %wjm%%sum%%~x1 |
| goto :eof |
| :rib |
| cd/d"%p%" |
| attrib -s %1 |
| goto :eof |
| :2_ |
| set "qwe=:" |
| set "hzn=:" |
| set "gg=:" |
| cls |
| echo ╔════════════╗ |
| set /p qwe=║要改后缀名的目录放到这里║: |
| set "qwe=%qwe:"=%" |
| if "%qwe%"==":" goto 2_ |
| :hzn_ |
| cls |
| echo.╭────────────────────╮ |
| echo.│ 输入更改的后缀名,不要加小数点 (. ),│ |
| echo.│────────────────────│ |
| echo.│ (*) 将会对该目录下的后缀名全部更改 │ |
| echo.╰────────────────────╯ |
| echo.╔═══════════════════╗ |
| set /p hzn=║输入要更改的后缀名 (jpg bmp txt exe *)║: |
| set "hzn=%hzn:"=%" |
| if "%hzn%"==":" goto hzn_ |
| :gg_ |
| cls |
| echo. |
| echo.╭──────────────────╮ |
| echo.│ 输入要替换的后缀名,不要加小数点 . │ |
| echo.╰──────────────────╯ |
| echo. ──────────────────────────────────── |
| echo.╔═══════════════════╗ |
| set /p gg=║输入要替换的后缀名 (jpg bmp txt exe)║: |
| set "gg=%gg:"=%" |
| if "%gg%"==":" goto gg_ |
| cls |
| echo. |
| echo 程序正在运行中...... |
| echo. |
| echo. |
| for /f "tokens=*" %%t in ('dir/b "%qwe%\*.%hzn%" ^|findstr/i/v/c:"0123456789"') do (set /a |
| |
| sxm+=1 |
| call title 正在更改第 %%sxm%% 个文件 %%t |
| ping 1.1 /w 300<NUL |
| cd/d"%qwe%\" |
| call :rzr "%%t")>nul 2>nul |
| cls |
| echo. |
| echo 完成!谢谢使用 |
| pause>nul |
| :rzr |
| cd/d"%qwe%\" |
| ren %1 "%~n1.%gg%" |
| goto :eofCOPY |