路漫漫其修远兮,吾将上下而求索

导航

使用批处理对包含指定字符的文件进行批量重命名

点击查看代码
@echo off
chcp 65001
rem 使用批处理将文件夹下所有txt文件有11的字符重命名为22

setlocal enabledelayedexpansion
  
:: 遍历当前目录下的所有文件
for %%A in (*.txt) do (
    set "filename=%%~nxA"
    set "newfilename=!filename:11=22!"
    if "!filename!" neq "!newfilename!" (
        echo Renaming file: !filename! -^> !newfilename!
        ren "%%A" "!newfilename!"
    )
)
endlocal

image
image

这个执行结果,可以对文件名中所有含11字段的地方进行重命名,不管在前面还是后面的11

点击查看代码
@echo off
chcp 65001
setlocal enabledelayedexpansion  
  
REM 遍历所有文件  
for %%f in (*aaa*) do (  
    set "filename=%%~nf"  
    set "extension=%%~xf"  
    REM 重命名文件,将文件名中的aaa替换为bbb  
    ren "%%f" "!filename:aaa=bbb!%extension%"
)  
  
echo 完成所有文件的重命名。  
pause
这个也可以,但是文件扩展名也改了,有bug~~

image
image

posted on 2024-10-15 17:20  爱在西元间  阅读(19)  评论(0编辑  收藏  举报