Board logo

标题: [求助]DOS如何合并两个文件中的相同行 [打印本页]

作者: wjcing     时间: 2007-12-27 18:14    标题: [求助]DOS如何合并两个文件中的相同行

如有两个文件1.txt,2.txt
1.txt中的内容:
a1
b1
c1
d1
e1
2.txt中的内容:
a2
b2
c2
d2
e2
合并为3.txt
[1]a1[2]a2[3]
[1]b1[2]b2[3]
[1]c1[2]c2[3]
[1]d1[2]d2[3]
[1]e1[2]e2[3]
作者: wjcing     时间: 2007-12-27 18:17
各位高手帮帮忙..谢谢了...
作者: wjcing     时间: 2007-12-27 18:19
原有一txt文件和把它分成三个文件
for /f %%i in (a1.txt,a3.txt,a5.txt) do echo %%i>>a1.txt
现想按以上格式各并....
作者: lxmxn     时间: 2007-12-27 23:13    标题: 试试这个:


@echo off & SetLocal EnableDelayedExpansion

for %%a in (1.txt 2.txt) do set /a num+=1&call :context %%a !num!

for /l %%a in (1,1,%maxline%) do (
    set lineno=%%a
    >>3.txt echo:[1]!file_1_%%a![2]!file_2_%%a![3]
)
echo 处理完成&pause & start notepad 3.txt&exit /b 0

:context
set line=0
for /f "delims=" %%a in (%1) do (
    set /a line+=1
    set file_%2_!line!=%%a
)
if not defined maxline set maxline=%line%
goto :EOF

作者: wjcing     时间: 2007-12-28 09:56
非常感谢..lxmxn版主