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

@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文件名,请高手帮助,谢谢!!!!

不要用for /f,可以用for /r,你自己试着写写,我就不帮你了,实在不行,再问。追问

试过了不行的,麻烦帮写下吧

追答

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

@echo off
for /r %cd% %%a in (*.pdf) do (
    echo %%a
)
pause>nul&exit

追问

就是要将文件夹下的pdf以及子文件夹下的pdf文件名将开头的数字0去掉,如04725080.pdf重命名为4725080.pdf。文件名中间及其他地方的0不能去掉,只去掉最前面一个0,谢谢你的帮助!!!

追答

等一下哈,我要出去玩,等有空了帮你些吧,

温馨提示:内容为网友见解,仅供参考
无其他回答

用批处理命令把当前文件夹及其所有子文件夹和里面所有文件的名字,用...
echo off & title 修改当前目录(包含子目录)中所有文件名中的某些字符 By 依梦琴瑶 ::设置要被替换的字符 set oStr=我 ::设置替换后的字符 set nStr=你 for \/f "delims=" %%a in ('dir \/a\/s\/b') do (if \/i not "%%~a"=="%~0" (set "Name=%%~na"ren "%%~a" "!Name:...

如何用批处理遍历一个文件夹下所有子目录和子目录下的文件
以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI echo off rem 获取指定目录下的所有文件路径并进行截取 set #=Any question&set $=Q&set\/az=0x53b7e0b4 title %#% +%$%%$% %z cd \/d "%~dp0"set "folder=D:\\xxx\\A"set "outfile=xxx.txt"type nul>"%outfile%"if not exist...

用批处理脚本重命名文件夹名称?
1. **打开记事本或任何文本编辑器**:首先,你需要打开记事本(Notepad)或你选择的任何文本编辑器来编写BAT脚本。2. **编写BAT脚本**:在记事本中输入以下示例脚本,用于将指定目录下所有文件夹的名称前添加"Prefix_"前缀。请将`C:\\path\\to\\your\\folders`替换为你的目标文件夹路径。```batch ech...

如何利用批处理命令修改文件夹内文件的名字
echo offfor \/d %%i in (*) do (for \/f "tokens=*" %%j in ('dir \/a-d \/b \/s "%%i\\*.*"') do (ren "%%j" "%%i%%~xj"move "%%~dpj%%i%%~xj" "%%~dpi"))pause将以上代码保存为批处理文件,放到一级文件夹 "甲" 中运行.默认会把文件改名后剪切到 "甲" 中....

怎么用bat批量重命名文件夹名?
1、右击电脑桌面的空白处,新建一个文本文档。2、新建完成后在空白的文本文档中输入代码@echo offstart cmd%0,输入完成后点击页面上的保存选项将该文件保存。3、将刚刚保存的TXT文件更改为.BAT后缀。4、双击该bat文件即可。

如何把多个文件夹下同名文件批量更改?
可以使用批处理脚本实现批量替换不同文件夹中相同文件名文件,具体步骤如下:将B文件夹内的10个文件复制到A文件夹的根目录下。使用for命令遍历A文件夹内的所有子目录,找到同名的文件,并将其替换为B文件夹中的文件。具体代码如下:echo off setlocal enabledelayedexpansion set srcFolder=A set dst...

批处理文件,遍历当前目录及所有子文件夹,去除文件的隐藏、系统属性。并...
1、遍布当前目录及所有子文件夹 dir \/s 2、去除文件隐藏 系统属性 attrrib -s -h 3、每一个正在修改的文件,没明白啥 意思 。基本上是这样的

批处理如何遍历一个分区上的所有文件和文件夹
方法一:for \/r 盘符:\\ %%i (*.*) do (echo %%i )方法二:set DestPath=D:\\你的目录\\rem 你的后缀 set DestExt=*.exe for \/f "delims=" %%i in ('dir \/b\/a-d\/s %DestPath%\\%DestExt%') do (echo %%i )第一种方法便是极好的。参考资料:http:\/\/blog.csdn.net\/tastelife\/art...

批处理复制文件至指定文件夹并自动重命名
如果不存在则创建之。然后,通过一个`for`循环遍历源文件夹中的所有文件。在循环内部,使用`set`命令和变量扩展来构建新的文件名(即原文件名前加上`Copy_`前缀)。最后,使用`copy`命令将文件复制到目标文件夹,并使用新的文件名。脚本执行完成后,会输出一条消息并暂停,以便用户查看结果。

修改文件夹名称?
```将上述命令中的"NewFolderName"替换为你想要设定的新文件夹名称。4. 执行命令:在命令提示符或PowerShell中,复制并粘贴上述命令,然后按下回车键执行。命令会遍历当前目录下的所有子文件夹,并将它们的名称修改为指定的新名称。请注意,执行修改文件夹名称的操作需要谨慎,确保在执行之前已经备份了...

相似回答