Batch file 附加/创建CSV文件
我有带标题的管道分隔符文本文件,有多个列,第一列表示csv文件名,我想从第2列开始将数据附加到csv文件,如果csv文件不存在,请创建带标题的新文件Batch file 附加/创建CSV文件,batch-file,Batch File,我有带标题的管道分隔符文本文件,有多个列,第一列表示csv文件名,我想从第2列开始将数据附加到csv文件,如果csv文件不存在,请创建带标题的新文件 col1|col2|col3|col4|col5 toll1|12042014|xxxx|xxxx|xxxxx toll2|13042014|xxxx|xxxx|xxxxx csv file [toll1.csv] col2|col3|col4|col5 12042014|xxxx|xxxx|xxxxx csv file [tol
col1|col2|col3|col4|col5
toll1|12042014|xxxx|xxxx|xxxxx
toll2|13042014|xxxx|xxxx|xxxxx
csv file [toll1.csv]
col2|col3|col4|col5
12042014|xxxx|xxxx|xxxxx
csv file [toll2.csv]
col2|col3|col4|col5
13042014|xxxx|xxxx|xxxxx
试试这个
@echo off
setlocal ENABLEDELAYEDEXPANSION
set headerRow=
for /f "tokens=1,* delims=^|" %%a in (tolls.csv) do (
if not defined headerRow (
set headerRow=%%b
) else (
if not exist "%%a.csv" echo !headerRow!>>"%%a.csv"
echo %%b>>"%%a.csv"
)
)
endlocal
从命令行的
For/F“tokens=1-5 delims=^|%G in(tolls.csv)do@echo%G%H%I%J%K开始(要在“.bat”批中运行,您应该将所有%s符号加倍:使用%%G等)。然后您可以将结果更改为将tokens=1-5
更改为tokens=1*
等。请注意delims=^ |
中的转义管道。请随时用实际成绩更新您的问题,并提出更多问题,以防您在某个问题上出现问题。Hi@ @ USER 738 64。如果这个答案已经解决了你的问题,请考虑通过点击复选标记接受它。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。