工作中有时候需要合并很多文本内容,例如一些推送清单之类,一个一个打开去复制粘贴的话,少量还行,如果txt文本数据量大(10+M以上)且文件数量多(成百上千),这种方式就显得很低效了。具体要求如下:
如上这样的一个文件夹里,需要我们打开子文件夹,然后对其中的txt文档进行合并,最后再合并为总文件。
首先,考虑分成两个步骤,第一步是找出所有的txt文件,并存放在同一个文件夹里;第二步是合并所有的txt文件。
第一步:找出所有的txt文件,这个可以有诸多方法,这里介绍常见的两种。
方法一:利用文件搜索。在当前文件夹下的搜索框中,使用“.txt”关键字搜索出所有的txt文件,然后全选复制到一个新建的文件夹“CItyConcat”里。
方法二:利用批处理
:: 新建一个文件夹cityconcate md cityconcate :: 复制子文件夹内的txt文档到cityconcate文件夹里 for /f "delims=" %%p in ('dir /b/ad') do copy %%p\*.txt* %~dp0\cityconcate\
第二步:合并文件
::合并全部文件夹 cd %~dp0\cityconcate type *.txt >> Concat.txt
整个过程直接使用批处理会方便很多,只需要新建一个txt文件,并将下面代码复制进去后改后缀为bat即可
@ echo off :: 新建一个临时文件夹concate md concate :: 复制子文件夹内的txt文档到concate文件夹里 for /f "delims=" %%p in ('dir /b/ad') do copy %%p\*.txt* %cd%\concate\ ::合并全部文件夹 cd %cd%\concate type *.txt >> Concat.txt :: 复制出合并后的文件到批处理文件所在的地址 copy %~dp0\concate\Concat.txt %~dp0\All.txt :: 删除临时文件夹,如果要保存此文件夹,则注释掉下面的代码即可 cd .. rd /s/q %~dp0\concate