将多个文本文件按列合并成一个csv文件的脚本,
@echo off
setlocal EnableDelayedExpansion
if exist result.csv del result.csv
set s1=result.csv
for %%f in (*.txt) do (
if not exist result.csv (
copy /y %%f %s1% >nul
) else (
call :merge %s1% %%f
)
)
:merge
set "sep=,"
if exist temp del temp
(
for /f "delims=" %%a in (%1) do (
setlocal enabledelayedexpansion
set /p line=
echo %%a!sep!!line!>>temp
endlocal
)
)<%2
copy /y temp %1
del temp
goto :eof
绝大部分脚本都来自http://stackoverflow.com/questions/7031687/merge-2-txt-files-in-a-single-tab-delimited-file-in-batch