[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 如何用批处理复式形合并两份文本数字

例:

a.txt内容为:
01 02 03
04 05 06
07 08 09

b.txt内容为:
11 12 13
14 15 16
17 18 19


a.txt内容与b.txt内容复式合并,保存为c.txt
两份文本内容均为升续数字,不区分重复数字,有重复也是直接合并。


如:

a.txt第一行是:01 02 03
b.txt是:
11 12 13
14 15 16
17 18 19
处理后为:
01 02 03 11 12 13
01 02 03 14 15 16
01 02 03 17 18 19


a.txt第二行是:04 05 06
b.txt是:
11 12 13
14 15 16
17 18 19
处理后为:
04 05 06 11 12 13
04 05 06 14 15 16
04 05 06 17 18 19


a.txt第三行是:07 08 09
b.txt是:
11 12 13
14 15 16
17 18 19
处理后为:
07 08 09 11 12 13
07 08 09 14 15 16
07 08 09 17 18 19

------------------------------

a.txt
01 02 03
04 05 06
07 08 09


b.txt
11 12 13
14 15 16
17 18 19


所以a.txt与b.txt复式合并是:

01 02 03 11 12 13
01 02 03 14 15 16
01 02 03 17 18 19
04 05 06 11 12 13
04 05 06 14 15 16
04 05 06 17 18 19
07 08 09 11 12 13
07 08 09 14 15 16
07 08 09 17 18 19

保存为c.txt

  1. >c.txt (for /f "tokens=*" %%a in (a.txt) do for /f "tokens=*" %%b in (b.txt) do echo %%a %%b)
复制代码

TOP

回复 2# yangfengoo


    楼上你好,你的代码不行,望改善。谢谢

TOP

回复 3# qzwifi
  1. @echo off
  2. for /f "delims=" %%i in (a.txt) do (
  3. for /f "delims=" %%a in (b.txt) do echo %%i %%a>>c.txt)
  4. exit
复制代码
试一下,我刚才试了 ok。。

TOP

@ECHO OFF
Setlocal enableDelayedExpansion
for /f "tokens=*" %%i in (a.txt) do (
for /f "tokens=*" %%n in (b.txt) do (
set str=%%i %%n
echo !str!>>c.txt
)
set str=
)

TOP

返回列表