找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: 无情浪子哥

[文件操作] [已解决]批处理如何实现同一文件夹内所有子文件夹合并?

[复制链接]
 楼主| 发表于 2021-5-9 20:50:06 | 显示全部楼层
回复 15# 1152


    如何运行,在win7
 楼主| 发表于 2021-5-9 21:02:22 | 显示全部楼层
回复 16# qixiaobin0715


    目前只能运行到三级,即使三级也是容易出错的
附加:https://wwa.lanzous.com/iYMAooyyj2d
谢谢
发表于 2021-5-9 21:28:11 | 显示全部楼层
回复 17# 无情浪子哥


    这都不会运行?去找一找帮助吧。
发表于 2021-5-10 06:49:51 | 显示全部楼层
回复 17# 无情浪子哥
重新整理了一下,兼顾你的上一个帖子,移动并改名,可解决重名问题
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /d %%a in (*) do (
  4. pushd %%a
  5. for /f "delims=" %%i in ('dir /b /s /a-d') do (
  6.     if not exist "%%a%%~nxi" (move "%%i" "%%a%%~nxi") else (
  7.         if not exist "%%a%%~ni (2)%%~xi" (move "%%i" "%%a%%~ni (2)%%~xi") else (
  8.             set n=2
  9.             for %%j in ("%%a%%~ni (*)%%~xi") do (
  10.                 set "str=%%~nj"
  11.                 set "m=!str:%%a%%~ni (=!"
  12.                 set "m=!m:)=!"
  13.                 if !m! gtr !n! set /a n=m
  14.             )
  15.             set /a n+=1
  16.             move "%%i" "%%a%%~ni (!n!)%%~xi"
  17.         )
  18.     )
  19. )
  20. popd
  21. )
  22. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2021-5-11 05:48:22 | 显示全部楼层
只移动不改名的话,可删除楼上代码从第6行开始以下所有%%a。
发表于 2024-12-11 16:27:01 | 显示全部楼层
回复 19# qixiaobin0715


    时隔三年  这个帖子帮到了我   谢谢:handshake
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 15:10 , Processed in 0.015126 second(s), 6 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表