Board logo

标题: [文件操作] 请帮忙分析文件重命名的批处理代码的问题 [打印本页]

作者: shootman2    时间: 2021-12-4 00:55     标题: 请帮忙分析文件重命名的批处理代码的问题

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

第五行改为
set new.filename=!new.filename:T=/T!
试试!!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2