如何将位于不同子文件夹下的多个csv文件合并为一个csv文件?

问题描述:

我有一个zip文件夹,在该文件夹下,我有很多子文件夹,每个子文件夹都有一些csv文件.现在我想将所有子文件夹中的所有csv文件复制(合并)到一个csv文件中...仅使用批处理脚本

I have a zip folder, under that I have many sub folders and each sub folder has some csv files. Now i want to copy (merge) all the csv files from different sub folders into one csv file... by using only batch scripting

以下代码使用 DIR/S 在子目录中搜索以查找.csv文件.找到一个后,它将内容附加到以summary_FILE变量命名的文件中.

The code below searches through subdirectories with DIR /S looking for .csv files. Upon finding one, it appends the contents to the file named in the SUMMARY_FILE variable.

SETLOCAL ENABLEDELAYEDEXPANSION

SET SUMMARY_FILE=C:\Users\bone\sumfile.csv
IF EXIST "%SUMMARY_FILE%" (DEL "%SUMMARY_FILE%")
CD C:\root\of\all\csv\files

SET /A LINE_COUNT=1

FOR /F "usebackq tokens=*" %%f IN (`DIR /S /B *.csv`) DO (
    FOR /F "usebackq tokens=*" %%s IN (`TYPE "%%~f"`) DO (
        ECHO !LINE_COUNT!,%%s >>"%SUMMARY_FILE%"
        SET /A LINE_COUNT=!LINE_COUNT! + 1
    )
)
EXIT /B 0