小编joh*_*n50的帖子

使用PowerShell将多个CSV文件合并为一个

您好我正在寻找powershell脚本,它将目录中的所有csv文件合并到一个文本文件(.txt)中.所有csv文件都有相同的标题,它总是存储在每个文件的第一行.所以我需要从第一个文件中获取头文件,但是在其余文件中应该跳过第一行.我能够找到完全符合我需要的批处理文件,但是我在一个目录中有超过4000个csv文件,并且完成这项工作需要45分钟以上.

@echo off
ECHO Set working directory
cd /d %~dp0
Deleting existing combined file
del summary.txt
setlocal ENABLEDELAYEDEXPANSION
set cnt=1
for %%i in (*.csv) do (
 if !cnt!==1 (
 for /f "delims=" %%j in ('type "%%i"') do echo %%j >> summary.txt
) else (
 for /f "skip=1 delims=" %%j in ('type "%%i"') do echo %%j >> summary.txt
 )
 set /a cnt+=1
 )
Run Code Online (Sandbox Code Playgroud)

任何建议如何创建powershell脚本比这批代码更有效?

谢谢.

约翰

csv powershell batch-file

21
推荐指数
4
解决办法
6万
查看次数

标签 统计

batch-file ×1

csv ×1

powershell ×1