我正在寻找删除下面文件中的点(。)的方法,但它似乎被操作系统识别为扩展名
SEGA8031.2867
我想将其修改为他将像下面的文件一样。更换点"。"通过下划线" _"。
SEGA8031_2867
使用.bat进行了一些测试,但没有得到预期的结果。
REN *SEGA????.????* *SEGA????_????*
你能帮帮我吗?
答案 0 :(得分:1)
Batch在变量中有一个字符串替换语法。这是%variable:search=replace%
> SET filename=SEGA8031.2867
> SET newfilename=%filename:.=_%
> echo %newfilename%
SEGA8031_2867
答案 1 :(得分:0)
使用纯批次:
@echo off
setlocal disableDelayedExpansion
for /f "eol=: delims=" %%F in ('dir /b "*sega8031.2867*"') do (
set "file=%%F"
setlocal enableDelayedExpansion
ren "!file!" "!file:SEGA8031.2867=SEGA8031_2867!"
endlocal
)
使用我的JREN.BAT hybrid JScript/batch utility:
jren "(SEGA8031)\.(2867)" "$1_$2"