Windows – 批量文件拆分.csv文件

前端之家收集整理的这篇文章主要介绍了Windows – 批量文件拆分.csv文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个非常大的.csv文件(> 500mb),我希望在命令提示符下将其分解成较小的.csv文件。 (基本上试图在Windows中找到一个linux“split”功能

这必须是一个批处理脚本,因为我的机器只安装了Windows,请求软件是一个痛苦。我遇到了一些示例代码(http://forums.techguy.org/software-development/1023949-split-100000-line-csv-into.html),但是,当我执行批处理时,它不起作用。我得到的是一个输出文件,只有125kb,当我请求它解析每2万行。

有人遇到过类似的问题,您是如何解决问题的?

试试这个:
  1. @echo off
  2. setLocal EnableDelayedExpansion
  3.  
  4. set limit=20000
  5. set file=export.csv
  6. set lineCounter=1
  7. set filenameCounter=1
  8.  
  9. set name=
  10. set extension=
  11. for %%a in (%file%) do (
  12. set "name=%%~na"
  13. set "extension=%%~xa"
  14. )
  15.  
  16. for /f "tokens=*" %%a in (%file%) do (
  17. set splitFile=!name!-part!filenameCounter!!extension!
  18. if !lineCounter! gtr !limit! (
  19. set /a filenameCounter=!filenameCounter! + 1
  20. set lineCounter=1
  21. echo Created !splitFile!.
  22. )
  23. echo %%a>> !splitFile!
  24.  
  25. set /a lineCounter=!lineCounter! + 1
  26. )

如上面的代码所示,它将原始的csv文件分割成多个csv文件,限制为20 000行。所有你需要做的是更改!文件!和!限制!变量相应。希望它有帮助。

猜你在找的Windows相关文章