bat脚本10_将2个文本文件中的对应行合并

来源:互联网 发布:尤克里里调音软件G 编辑:程序博客网 时间:2024/06/02 00:30


1.概述
%1就是表示批处理的第一个参数
%~1表示删除参数外面的引号
goto :eof 类似c++的return
skip=%~1 是跳过for循环中前多少行

2.实例
filename1.txt--------------
小明
小红


filename2.txt--------------
99
60


CombineFile.bat-------------
@echo off
set num=0
setlocal enabledelayedexpansion
for /f "delims=" %%a in (file1.txt) do (
    if !num! equ 0 (
        set /p str=<file2.txt
        echo %%a!str!>>file3.txt
    ) else (
        call:get !num! "%%a"
    )
    set /a num+=1
)
pause
exit
  
:get
for /f "skip=%~1 delims=" %%b in (file2.txt) do (
    echo %~2%%b>>file3.txt
    goto :eof
)


生成的文本文件内容如下
file3.txt------
小明99
小红60
0 0