本帖最后由 77七 于 2024-6-9 14:56 编辑
回复 13# qixiaobin0715
谢谢大佬指点!
我思路不严谨,没有考虑到数字后部分与数字前部分出现 相同可能。修改为以下代码,手动添加 |字符,防止重复。
- @echo off
- cd /d "%~dp0"
- for /f "delims=" %%d in ('dir /b /ad') do (
- for /f "tokens=1* delims=0123456789" %%a in ("#%%d|") do (
- set name=%%d
- setlocal enabledelayedexpansion
- set "_name=!name!|"
- ren "!name!" "!_name:%%b=!"
- endlocal
- )
- )
- pause
复制代码 再添加一个判断,防止误伤没有数字的文件夹
- @echo off
- cd /d "%~dp0"
- for /f "delims=" %%d in ('dir /b /ad') do (
- for /f "tokens=1* delims=0123456789" %%a in ("#%%d|") do (
- set name=%%d
- if "%%b" neq "" (
- setlocal enabledelayedexpansion
- set "_name=!name!|"
- ren "!name!" "!_name:%%b=!"
- endlocal
- )
- )
- )
- pause
复制代码
|