Board logo

标题: [文本处理] 批处理将目录下的所有txt文件合并到一个txt文件中 [打印本页]

作者: lanwairen123    时间: 2009-5-17 15:07     标题: 批处理将目录下的所有txt文件合并到一个txt文件中

求一个批处理能将目录下的所有txt文件中的内容合并到一个txt文件中。
作者: qwlllluqu    时间: 2009-5-17 15:13

楼主请详细解释下合并顺序,例如1.txt   2.txt  或者是A.txt B.txt  等。。。
作者: lanwairen123    时间: 2009-5-17 15:18     标题: 回复 2楼 的帖子

就是你用右键排序是的顺序,就象你说的那样。比方一个小说名。
作者: Batcher    时间: 2009-5-17 15:30

  1. @echo off
  2. (for %%a in ("C:\test\*.txt") do (
  3.   type "%%a"
  4.   echo/
  5. ))>a.result
  6. move /y a.result result.txt
  7. start result.txt
复制代码

作者: lanwairen123    时间: 2009-5-17 15:47     标题: 回复 4楼 的帖子

谢谢了,我这样写的
  1. @echo off
  2. for %%i in ("*.txt") do (type "%%i">re.txt)
  3. start re.txt
复制代码
但只是提到了第一个txt文件的内容。请问哪里错了?
作者: Batcher    时间: 2009-5-17 17:24     标题: 回复 5楼 的帖子

把>换成>>
作者: lanwairen123    时间: 2009-5-17 19:10     标题: 回复 6楼 的帖子

谢谢啦,成功了,呵呵
作者: h168855858    时间: 2009-5-17 20:43

看不懂,期待你们加上注释。。。呵呵
作者: everest79    时间: 2009-5-17 20:56

  1. cd.>src.txt
  2. copy /b src.txt+*.txt src.txt
复制代码

作者: SunTB    时间: 2009-5-17 20:56

原帖由 lanwairen123 于 2009-5-17 15:47 发表
谢谢了,我这样写的@echo off
for %%i in ("*.txt") do (type "%%i">re.txt)
start re.txt但只是提到了第一个txt文件的内容。请问哪里错了?


这样提取到的不是第一个txt文件而是最后一个txt文件的内容
作者: Batcher    时间: 2009-5-17 21:30

楼主可以测试一下,当文本最后一行不是空行的时候,5楼、9楼的结果是不是你想要的。
作者: lanwairen123    时间: 2009-5-18 09:04     标题: 回复 11楼 的帖子

厄,貌似俺又写错了,这是为什么呢?这次好像有提重复的。   九楼的可以,代码挺简单的,就是看不懂 ,呵呵。
作者: freeback    时间: 2009-5-19 00:16

谢谢了,我用了上面的代码问题一下子就变得简单许多
作者: terse    时间: 2009-5-19 09:19

copy  *.txt 合并后_的文件.txt
作者: wangshuping42    时间: 2009-5-19 12:24     标题: 最简单的代码来了

type *.txt>>list.txt
作者: Batcher    时间: 2009-5-19 12:27     标题: 回复 15楼 的帖子

你可以看看生成的文本里面是不是多了一些不必要的内容
作者: xbl_hhs    时间: 2009-5-22 10:40

内容并不多出什么,只是有一个上一个文本最好一行和下一个文本第一行连在一块没有分行的问题




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2