【发布时间】:2013-11-17 11:34:24
【问题描述】:
搜索上一个问题找不到任何匹配的问题。
我需要一个批处理文件,它将与通配符匹配的文件夹中的所有 CSV 文件合并到一个新的合并 CSV 文件中,并且在每个合并的行中,它会在每个传输的字符串的末尾添加原始文件名。我尝试了这个不起作用的命令:
for /F "tokens=1* delims=" %%i in (^"SO_*.csv^") do @echo %%i,%%~ni >> MERGED.csv
它不拾取行,它只是拾取“SO_*.csv”以及第一个实际文件的文件名,将它们放入 MERGED.csv 并停止。
我哪里出错了?
提前致谢。
【问题讨论】:
-
为什么是这些胡萝卜?要处理文件中的行,您需要使用:
for /F "usebackq" %%i in ("SO_*.csv") ..或for /F %%i in (SO_*.csv) ..
标签: batch-file csv merge