|
|
楼主 |
发表于 2023-5-21 12:55:45
|
显示全部楼层
我自已折腾了一个,后面三段是可以的,满足需求二。但是第一段A001,执行后,也没有报错,但是没有改名。还请帮我解决一下,谢谢!- @echo off
- :A001
- setlocal
- for /f %%a in (List.txt) do set oldname=%%a
- set newname=
- for /f "usebackq delims=" %%i in (`dir /s/b/a-d *`) do (
- setlocal enabledelayedexpansion
- set var=%%~nxi
- set "var=!var:%oldname%=%newname%!"
- if not "%%~nxi"=="!var!" (echo 正在改名:"%%i" =》 "!var!")
- echo %%i |find "mutiren.bat" >nul || ren "%%i" "!var!" >nul
- endlocal
- )
- endlocal
- :A002
- setlocal
- set oldname=4K
- set newname=2160P
- for /f "usebackq delims=" %%i in (`dir /s/b/a-d *`) do (
- setlocal enabledelayedexpansion
- set var=%%~nxi
- set "var=!var:%oldname%=%newname%!"
- if not "%%~nxi"=="!var!" (echo 正在改名:"%%i" =》 "!var!")
- echo %%i |find "mutiren.bat" >nul || ren "%%i" "!var!" >nul
- endlocal
- )
- endlocal
- :A003
- setlocal
- set oldname=:
- set newname=.
- for /f "usebackq delims=" %%i in (`dir /s/b/a-d *`) do (
- setlocal enabledelayedexpansion
- set var=%%~nxi
- set "var=!var:%oldname%=%newname%!"
- if not "%%~nxi"=="!var!" (echo 正在改名:"%%i" =》 "!var!")
- echo %%i |find "mutiren.bat" >nul || ren "%%i" "!var!" >nul
- endlocal
- )
- endlocal
- :A004
- setlocal
- set oldname=..
- set newname=.
- for /f "usebackq delims=" %%i in (`dir /s/b/a-d *`) do (
- setlocal enabledelayedexpansion
- set var=%%~nxi
- set "var=!var:%oldname%=%newname%!"
- if not "%%~nxi"=="!var!" (echo 正在改名:"%%i" =》 "!var!")
- echo %%i |find "mutiren.bat" >nul || ren "%%i" "!var!" >nul
- endlocal
- )
- endlocal
复制代码 |
|