如何用CMD批处理提取所有子文件夹内容按文件夹名称命名并提取到一个文件夹中

如何用批处理提取一堆文件夹中的子文件,(比如文件夹1、文件夹2、文件夹3。。。文件夹N。每个子文件夹夹下面只有一个文件。。我要把文件夹1下面的文件重命名为文件夹1、文件夹... 如何用批处理提取一堆文件夹中的子文件,(比如文件夹1、文件夹2、文件夹3。。。文件夹N。每个子文件夹夹下面只有一个文件。。我要把文件夹1下面的文件重命名为文件夹1、文件夹2下面的文件重命名为文件夹2、文件夹3下面的文件重命名为文件夹3、。。。把然后把重命名后的文件提取到一个文件夹中。。并删除已经空掉了的文件夹。)我要并将其重命名为上一层文件夹的名称。。然后将所有文件夹下面的文件提取出来放到一个文件夹中。。 展开
 我来答
jd08139
2013-09-30 · TA获得超过3735个赞
知道大有可为答主
回答量:2174
采纳率:66%
帮助的人:2862万
展开全部
@Echo Off
For /f "tokens=*" %%i in ('dir /ad /b /s "%~dp0"') do (
For /f "tokens=*" %%j in ('dir /a-d /b /s "%%i\*.*"') do (
Ren "%%j" "%%~nxi%%~xj"
Move "%%i\%%~nxi%%~xj" "D:\文件提取到此文件夹\"
Rd /q "%%i"))
Pause

以上内容保存为批处理文件(xx.bat),和要提取文件的子文件夹放在一起即可,例如 和 文件夹1、文件夹2 放在一起.

默认保留文件后缀名,如果不保留文件后缀名请删除 "%%~xj"

追问
非常不错。。可以完美实现。那如果我想把重命名后的文件拷贝到和那个批处理文件同样的文件夹下面要怎么实现呀?。。
追答
拷贝还是移动?
拷贝 Copy "%%i\%%~nxi%%~xj" "%~dp0"
移动 Move "%%i\%%~nxi%%~xj" "%~dp0"
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式