【发布时间】:2022-11-04 16:10:18
【问题描述】:
我需要将多个 .csv 合并为一个,每个 .csv 文件都有如下标题(2 行);
Row#1 SWG SWG report RequestReport 1.1 2022-10-30T20:00:00Z to 2022-10-31T20:00:00Z
Row#2 RequestID RequestDate ID LocalizedRequestDate ApplicationName OverallRcode
@echo off
setlocal enableextensions disabledelayedexpansion
rem configure paths
set "source=E:\Guest\*.csv"
set "target=E:\Guest\SWG\Report_%date:~4,2%-%date:~7,2%-%date:~-4%.csv
>"%target%" (
for %%a in ("%source%") do (
set "headerRow="
<"%%~fa" (
for /l %%h in (1 1 10) do if not defined headerRow set /p "headerRow="
findstr "^"
)
)
)
我只需要在目标文件中保留 1 个标题(第 2 行)和来自 .csv 文件的数据。
上面的代码正在合并文件,还删除了每个文件的第一个标头,但包含每个 .csv 文件的第二个标头,我该如何消除它?
【问题讨论】:
-
所以你似乎有一个 TSV,(制表符分隔值), 文件;那是对的吗?您能否还解释一下为什么这两个“标题”记录中的每一个都有很多空字段?
-
@Compo,是的,它是 TSV,文件中没有空字段。
标签: batch-file