批量垂直拆分csv文件

时间:2019-01-24 14:14:52

标签: batch-file cmd

我需要使用蝙蝠分割csv文件。

文件就像

a;b;c;d;e;f

我需要使用蝙蝠语言将a;b列放入file1.csv并将c;d;e;f放入file2.csv中。

这是我做的:

@echo off & setlocal enabledelayedexpansion
set c=0
for /f "tokens=*" %%a in (file.csv) do (
  REM this next is just to kill any lingering left-overs
  >f!c!.mol echo.
)
pause

2 个答案:

答案 0 :(得分:1)

将前两列(tokens=1,2)移至file1.csv,将其余(*)移至file2.csv

for /f "tokens=1,2,* delims=;" %%a in (file.csv) do (
  >>file1.csv echo %%a;%%b
  >>file2.csv echo %%c
)

答案 1 :(得分:0)

这是一个.bat文件脚本,用于拆分.csv文件。

powershell -NoLogo -NoProfile -Command ^
    "Get-Content -Path '.\sv.txt' |" ^
        "ForEach-Object {" ^
            "if ($_ -match '([^;];[^;]);(.*)') {" ^
                "$Matches[1] | Out-File -FilePath 'sv-file1.txt' -Encoding ascii -Append;" ^
                "$Matches[2] | Out-File -FilePath 'sv-file2.txt' -Encoding ascii -Append;" ^
            "}" ^
        "}"