Board logo

标题: [文本处理] [已解决]批处理如何批量在多个txt文本文件末尾添加指定内容? [打印本页]

作者: crownking1983    时间: 2016-6-13 01:03     标题: [已解决]批处理如何批量在多个txt文本文件末尾添加指定内容?

本帖最后由 pcl_test 于 2016-6-13 08:56 编辑

我在百度上找到了如何在每个文本内容的结尾添加比较短的文字的软件。但是只支持一行文字,不支持添加带换行的大段文字。
跪求将每个txt文本文件的内容末尾批量添加大段文字内容的批处理命令
作者: 再世情緣    时间: 2016-6-13 01:16

本帖最后由 再世情緣 于 2016-6-13 01:37 编辑

思路:利用copy txt1.txt + txt2.txt txt3.txt
比如:
txt1.txt 内容:
1
11
111
txt2.txt 内容:
2
22
222
把txt1添加到txt2后面,生成txt3:
copy txt2.txt + txt1.txt txt3.txt
txt3.txt 内容为:
2
22
222
1
11
111
PS:
为了避免出错,txt3 的名字不得跟txt1 txt2 重复,如果需要用生成的文件替代旧文件,再move /y一下
作者: crownking1983    时间: 2016-6-13 02:03

这个思路很清晰 按照这个思路写的话 代码应该怎样写
作者: 再世情緣    时间: 2016-6-13 02:23

本帖最后由 再世情緣 于 2016-6-13 02:26 编辑

你先把需要添加的内容写到一个文本文档里,比如就叫exp.txt,跟那些txt放一起吧,或者set "exp=exp.txt" 这里你写成完整路径
然后,
  1. @echo off &color 0a &setlocal enabledelayedexpansion
  2. pushd "%cd%"
  3. set "exp=exp.txt"
  4. for /f "delims=" %%a in ('dir /s /b /a -d "*.txt" 2^>nul') do (
  5. copy "%%~fa"+"!exp!" "%%~nxa.new" >nul 2>nul
  6. move /y "%%~nxa.new" "%%~fa" >nul 2>nul
  7. )
  8. pause.
复制代码
把这个处理放到文本文件夹里面运行就好了。。。注意,这个会替换源文件的。。。
作者: crownking1983    时间: 2016-6-13 04:05

回复 4# 再世情緣


    完美 但是今天发不了分数了 明天给你补上+1技术分




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