Board logo

标题: [文件操作] 【已解决】批处理合并多个文件末尾换行符问题 [打印本页]

作者: newswan    时间: 2021-10-6 12:04     标题: 【已解决】批处理合并多个文件末尾换行符问题

连接多个文件
有的文件文末不是换行符
file1:
  1. 111 (此处没有换行符)
复制代码
file2:
  1. 222
复制代码
file3:
  1. 333
复制代码
用 copy 或者 type 连接文件
  1. copy file1 + file2 +file3 fileall
复制代码
  1. for /f "usebackq tokens=* delims=" %%a in (`dir /s /b *.txt`) do (
  2.     type "%%~fa"
  3. )
复制代码
都不会在文件末尾添加换行,
结果像这样
  1. 111222
  2. 333
复制代码
如果在每个文件末尾都添加空行,又会多余空行
请问,在批处理中,怎么处理?
作者: qixiaobin0715    时间: 2021-10-6 12:33

回复 1# newswan
  1. for %%i in (*.txt) do (
  2. for /f "delims=" %%a in ('type "%%i"') do (
  3. echo,%%a
  4. )
  5. )
复制代码

作者: a20150604    时间: 2021-10-6 12:34

不想让 copy 添加任何额外字节, 就以 /b 参数加在所有文件后
作者: newswan    时间: 2021-10-6 16:58

用大文件测试,效率太低,文件大的话,还是 unix 命令




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