![重命名文件夹中的多个文件](https://linux22.com/image/1421461/%E9%87%8D%E5%91%BD%E5%90%8D%E6%96%87%E4%BB%B6%E5%A4%B9%E4%B8%AD%E7%9A%84%E5%A4%9A%E4%B8%AA%E6%96%87%E4%BB%B6.png)
我的文件夹中有一些文件,例如:
asd55.png
qwe55.png
zxc55.png
我想删除 55 并得到结果:
asd.png
qwe.png
zxc.png
我尝试过:
ren *55.png *.png
但不起作用。
笔记:
我有不同的名称大小,例如:
asd55.png
qwerty55.png
答案1
ren ???55.png ???.png
看Windows RENAME 命令如何解释通配符?寻求解释
如果 55 之前的字符数有所不同,那么您可能需要使用批处理脚本。(可以使用命令行上相当复杂的一行程序来完成,但不值得)
@echo off
setlocal enableDelayedExpansion
for /f "delims=" %%F in ('dir /a-d ?*55.png') do (
set "name=%%~nF"
ren "%%F" "!name:~0,-2!%%~xF"
)
如果任何文件名可能包含!
,则必须在循环内打开和关闭延迟扩展。
@echo off
setlocal disableDelayedExpansion
for /f "delims=" %%F in ('dir /a-d ?*55.png') do (
set "name=%%~nF"
set "ext=%%~xF"
setlocal enableDelayedExpansion
ren "!name!!ext!" "!name:~0,-2!!ext!"
endlocal
)