bat 图片批量重命名
我有一堆文件夹,放图片的。图片名乱七八糟,我现在想把所有图片名修改为文件夹名-序号比如文件夹A0001里的图片,全部明明为A0001-1.jpg,A0001-2.jpg....
我有一堆文件夹,放图片的。
图片名乱七八糟,我现在想把所有图片名修改为文件夹名-序号
比如文件夹 A0001里的图片,全部明明为A0001-1.jpg,A0001-2.jpg....以此类推。
不需要弄的太复杂,同时处理多个文件夹什么的就算了,只需要放在文件夹里双击运行就可以修改的那种就行了。 展开
图片名乱七八糟,我现在想把所有图片名修改为文件夹名-序号
比如文件夹 A0001里的图片,全部明明为A0001-1.jpg,A0001-2.jpg....以此类推。
不需要弄的太复杂,同时处理多个文件夹什么的就算了,只需要放在文件夹里双击运行就可以修改的那种就行了。 展开
2个回答
展开全部
@echo off
setlocal enabledelayedexpansion
call :loop "%cd%"
for %%a in (*.jpg) do (
set /a n+=1
ren "%%a" "%var%-!n!%%~xa"
)
pause&exit
:loop
set "var=%~nx1"
追问
可以运行,不过对于这类文件名无效:
T2AeyzXdRcXXXXXXXX_!!197742714.jpg
会提示命令语法不正确,是因为感叹号的原因吗? 有木有什么办法解决?
追答
@echo off
call :loop "%cd%"
for %%a in (*.jpg) do (
set /a n+=1
set "str=%%a"
setlocal enabledelayedexpansion
ren "!str!" "%var%-!n!%%~xa"
endlocal
)
pause&exit
:loop
set "var=%~nx1"
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询