批处理如何遍历当前文件夹内所有子文件夹内的pdf文件并改名

@echooffsetlocalenabledelayedexpansionfor/f"delims="%%ain('dir/b/a-d*.pdf')do(set"bn=... @echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /b/a-d *.pdf') do (
set "bn=%%a"
set bn=!bn:*0=!
ren "%%~nxa" "!bn!"
)
pause>nul&exit
这个批处理能在当前文件夹内改名,但不能遍历每个文件夹,比如在E:\1文件夹下有2个子文件夹E:\1\a和E:\1\b。我的目的是把批处理放在E:\1下运行就能改a和b文件夹内的pdf文件名,请高手帮助,谢谢!!!!
展开
 我来答
rusterx
2014-06-29 · TA获得超过136个赞
知道小有建树答主
回答量:86
采纳率:100%
帮助的人:76.5万
展开全部
不要用for /f,可以用for /r,你自己试着写写,我就不帮你了,实在不行,再问。
更多追问追答
追问
试过了不行的,麻烦帮写下吧
追答

我只帮你找到了文件夹下的pdf以及子文件夹下的pdf,但不知道你需要怎么重命名,所以你自己看着改改,或者你告诉要怎么重命名,我帮你写。以下代码会递归找到当前文件夹下及子文件夹的pdf文件的全路径

@echo off
for /r %cd% %%a in (*.pdf) do (
    echo %%a
)
pause>nul&exit
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式