标题: [文本处理] 【已解决】如何批量合并2个文件夹里名称相同的txt文档 (WHY老师请看私信) [打印本页]
作者: 屡败屡战 时间: 2018-3-12 08:59 标题: 【已解决】如何批量合并2个文件夹里名称相同的txt文档 (WHY老师请看私信)
本帖最后由 屡败屡战 于 2018-3-18 15:33 编辑
例如有2个文件夹,文件夹A与B,A与B文件夹里面是同名同姓文件,但内容不相同(呈N个文档,数量很多)。
请问如何批量处理,把A、B文件夹下的同名txt文档进行一对一“合并”成一个新txt文档。即以A文件夹下文件为基准,将B文件夹下的同名的文档一一对应的“合并”到A文件夹下同名文档中。
问:将B文件夹下的同名的文档“合并”到A文件夹下同名文档中,合并到文件头部,代码该咋写?请吿知哪里代码表示头部
将B文件夹下的同名的文档“合并”到A文件夹下同名文档中,合并到文件尾部,代码该咋写?请吿知哪里代码表示尾部
另外,合并后的文档内容要求保持原文档的格式,主要指换行。
望不吝赐教!!
我求的是批量处理N个文件的代码,而不是単个文件的代码
作者: Batcher 时间: 2018-3-12 09:33
合并到尾部比较简单,直接使用追加写入的方式就行了,例如:- echo,>>C:\A\1.txt
- type C:\B\1.txt >>C:\A\1.txt
复制代码
合并到头部思路是这样:临时生产一个新文件,依次写入两个文件的内容,把临时文件进行重命名,例如:- type C:\B\1.txt >C:\A\1.tmp
- echo,>>C:\A\1.tmp
- type C:\A\1.txt >>C:\A\1.tmp
- move /y C:\A\1.tmp C:\A\1.txt
复制代码
作者: 屡败屡战 时间: 2018-3-12 10:11
老师好;
我求的是批量处理N个文件的代码,而不是単个文件的代码
作者: ivor 时间: 2018-3-12 20:21
- for /f "delims=" %%a in ('dir /b /a-d A\*.txt') do (copy "%%~dpaA\%%~nxa" + "%%~dpaB\%%~nxa" "%%~dpaA\%%~nxa")
复制代码
作者: 屡败屡战 时间: 2018-3-12 22:33
ivor 老师:
您的代码完美,我还有个请求,能否在合并文档时,合并的两个文档之间,间隔一行“空行”,以方便查看,谢谢了!!
作者: Batcher 时间: 2018-3-13 09:08
回复 5# 屡败屡战
copy命令合并文件无法实现这个效果,2楼的代码可以。
作者: 屡败屡战 时间: 2018-3-13 09:31
batcher老师好;
我求的是批量处理N个文件的代码,而不是単个文件的代码,老师您的代码是针对单文件的。我想求处理N个文件的。
作者: Batcher 时间: 2018-3-13 14:07
回复 7# 屡败屡战
把2楼的那种方法放到4楼那种for循环里面就能批量了
作者: yhcfsr 时间: 2018-3-14 02:30
ivor 发表于 2018-3-12 20:21
- for /f "delims=" %%a in ('dir /b /a-d A\*.txt') do (echo.>>"%%~dpaA\%%~nxa"&© "%%~dpaA\%%~nxa" + "%%~dpaB\%%~nxa" "%%~dpaA\%%~nxa")
复制代码
作者: 屡败屡战 时间: 2018-3-16 14:31
本帖最后由 屡败屡战 于 2018-3-16 15:03 编辑
WHY老师好像误会我了。
请WHY老师看下我给您发的私信。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |