批处理重命名子文件夹里的文件

文件夹里有若干子文件夹,比如“门神”“灶神”“女神”,每个子文件夹里又有若干图片文件(数量在1到99张之间),能不能有一个批处理命名,执行后,可以将子文件夹里的文件以子文... 文件夹里有若干子文件夹,比如“门神”“灶神”“女神”,每个子文件夹里又有若干图片文件(数量在1到99张之间),能不能有一个批处理命名,执行后,可以将子文件夹里的文件以子文件夹名加数字序号(两位数)自动命名呢,比如“女神”下的文件分别命名为:女神01.jpg、女神02.jpg、…… 展开
 我来答
qop_dob
推荐于2017-11-27 · TA获得超过1.5万个赞
知道大有可为答主
回答量:1.3万
采纳率:79%
帮助的人:3980万
展开全部
不清楚你的实际文件/情况,仅以问题中的样例/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的多个文件夹放一起双击运行
@echo off&mode con lines=3000
rem 将多个子文件夹里的jpg图片文件以所在子文件夹名称和两位递增的数字序号重命名
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
cd /d "%~dp0"
set "folder=."
if not exist "%folder%" (echo;"%folder%" 未找到&pause&exit)
if "%folder:~,-1%" equ "\" set "folder=%folder:~,-1%"
for /f "delims=" %%a in ('dir /ad /b "%folder%"') do (
    set n=0
    set "fn=%%~nxa"
    for /f "delims=" %%b in ('dir /a-d /b "%folder%\%%~nxa\*.jpg" 2^>nul') do (
        set /a n+=1
        set "file=%folder%\%%~nxa\%%~nxb"
        setlocal enabledelayedexpansion
        set "newname=!fn!0!n!%%~xb"
        if !n! geq 10 (
         set "newname=!fn!!n!%%~xb"
        )
        echo;"!file!" --^> "!newname!"
        ren "!file!" "!newname!"
        endlocal
    )
)
echo;%#% +%$%%$%/%_% %z%
pause
exit
更多追问追答
追答
请及时采纳回答
追问
感谢!!!!
能不能修改成只要放在具体某个文件夹里执行就可以,而不用修改代码里的路径了,那样是最好的,不过现在这样已经很不错了
我想我问
2015-01-05 · TA获得超过2060个赞
知道大有可为答主
回答量:1694
采纳率:73%
帮助的人:894万
展开全部
重命名软件很多的,一搜一大把,功能很强大也很实用。百度一下就有了,下载绿色的不用安装,解压就可以用的那种,环保无毒!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式