Batch file 批量垂直拆分csv文件
我需要使用bat分割csv文件 该文件类似于Batch file 批量垂直拆分csv文件,batch-file,cmd,Batch File,Cmd,我需要使用bat分割csv文件 该文件类似于 a;b;c;d;e;f 我需要把这些列放在a;b转换为file1.csv和c;DE使用bat语言将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
a;b;c;d;e;f
我需要把这些列放在a;b转换为file1.csv和c;DE使用bat语言将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
获取前两列标记=1,2到file1.csv,其余*到file2.csv:
下面是一个分割.csv文件的.bat文件脚本
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;" ^
"}" ^
"}"
这真的是DOS还是Windows?这是Windows中的BAT我找到了一个代码来分割我的文件,但可怕的是我需要垂直搜索。搜索找到自己的代码或参考资料是你的责任,并将该代码作为问题的一部分提供给你。StackOverflow不是一个免费的代码编写服务,请阅读并使其成为主题。还请确保突出显示代码并使用{}按钮将其格式化为代码框。我不明白我需要垂直。你能给出一个预期输出的例子吗?如果一个答案解决了你的问题,或者你发现它有帮助,你应该考虑和/或@斯蒂芬,你的提示是不引人注目的更有效:/f令牌=1,2,*Delims=;%%。文件中的a.csv是否回显%%a;%%b&>&2 echo%%c>file1.csv 2>file2。csv@Aacini是的,速度应该快得多,特别是对于大文件,但是对于初学者来说可能会让人困惑。
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;" ^
"}" ^
"}"