近期需要处理大量的标准文件的重命名,我写了个自动处理的bat脚本,其中有段字符串替换的部分,始终无法达到要求,
希望大神帮助看看是哪里出了问题。- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%a in ('dir/b "DB*T*.pdf" 2^>nul') do (
- set new.filename=%%~nxa
- set area.code=!new.filename:~2,2!
- set new.filename=!new.filename:DB!!area.code!!T=DB!!area.code!!∕T!
- set new.filename=!new.filename:-=—!
- rename "%%~a" "!new.filename!"
- )
复制代码 我的目的是将 DB52T 替换成DB52/T ,DB48T 替换成 DB48/T 依次类推,中间的两位数字是动态变的。
我想的是,将原名称中的两位数字截取后,放到变量中,在字符串替换时,用变量跟着一起替换,但是在
变量上替换字符串时,再使用变量,就出问题,请帮忙看看该怎么处理。 |