[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
回复 8# Batcher
@echo off
set "SrcFolder=D:\数据\周转"
set "DstFolder=D:\数据\周转\合并"

谢谢老师出手帮助!也成功合并。

TOP

合并成功,谢谢老师的帮助!

TOP

本帖最后由 PCL0769 于 2021-9-6 14:52 编辑

谢谢!
可能是自制时出错,重新复制后运行。正在生成中......

TOP

代码要放在D:\数据\周转 下

TOP

回复 1# PCL0769
  1. @echo off
  2. set "SrcFolder=D:\数据\周转"
  3. set "DstFolder=D:\数据\合并"
  4. if not exist "%SrcFolder%" (
  5.     goto :eof
  6. )
  7. if not exist "%DstFolder%" (
  8.     md "%DstFolder%"
  9. )
  10. for /f "delims=" %%i in ('dir /b /ad "%SrcFolder%"') do (
  11.     for /f "delims=" %%j in ('dir /b /a-d "%SrcFolder%\%%i\*.txt" 2^>nul') do (
  12.         >"%DstFolder%\%%j" type "%SrcFolder%\%%i\%%j"
  13.         for /f "delims=" %%k in ('dir /b /ad "%SrcFolder%" ^| findstr /v /b /e "%%i"') do (
  14.             if exist "%SrcFolder%\%%k\%%j" (
  15.                 >>"%DstFolder%\%%j" type "%SrcFolder%\%%k\%%j"
  16.             )
  17.         )
  18.         >>"%DstFolder%\%%j" echo,
  19.     )
  20.     goto :eof
  21. )
复制代码
1

评分人数

    • PCL0769: 谢谢老师的帮助!技术 + 1
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 6# PCL0769
应当是复制代码时出现了问题,重新复制代码再试试

TOP

D:\abc
有文件夹,里面有个%~nxa  0KB 没看到后缀是什么

TOP

D:\数据\周转
文件夹在周转中,里面有202101  202102 202103.....文件夹,然后每个文件夹中有30多个记事本,1.TXT  2.TXT  3.TXT.......

将同名记事本合并后在周转文件夹中生成一个合并文件夹,合并文件夹中还是按原记事本名1.TXT  2.TXT  3.TXT.......保存

TOP

本帖最后由 qixiaobin0715 于 2021-9-6 14:17 编辑

回复 3# PCL0769
D盘中abc文件夹中有无合并文件?
不要先顾着评分,解决问题才是关键。

TOP

本帖最后由 PCL0769 于 2021-9-6 14:05 编辑
回复  PCL0769
假设每个子文件夹中的文件名一样多,文件名都一样。
批处理文件放在与子文件夹平行的目录 ...
qixiaobin0715 发表于 2021-9-6 13:53

老师好!谢谢!
出现下面提示:

系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
系统找不到指定的文件。
请按任意键继续. . .

传不图片及附件
D:\数据\周转
文件夹在周转中,里面有202101  202102 202103.....文件夹,然后每个文件夹中有30多个记事本,1.TXT  2.TXT  3.TXT.......

TOP

回复 1# PCL0769
假设每个子文件夹中的文件名一样多,文件名都一样。
批处理文件放在与子文件夹平行的目录中。
  1. @echo off
  2. set "Folder=D:\abc"
  3. md "%Folder%"
  4. for %%i in (202101\*.txt) do (
  5.     (for /d %%a in (*) do (
  6.         type "%%a\%%~nxi"
  7.     ))>"%Folder%\%%~nxi"
  8. )
  9. pause
复制代码
1

评分人数

TOP

返回列表