加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

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

发布时间:2020-12-13 21:06:35 所属栏目:Windows 来源:网络整理
导读:我有一个非常大的.csv文件( 500mb),我希望在命令提示符下将其分解成较小的.csv文件。 (基本上试图在Windows中找到一个linux“split”功能。 这必须是一个批处理脚本,因为我的机器只安装了Windows,请求软件是一个痛苦。我遇到了一些示例代码(http://forums
我有一个非常大的.csv文件(> 500mb),我希望在命令提示符下将其分解成较小的.csv文件。 (基本上试图在Windows中找到一个linux“split”功能。

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

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

试试这个:
@echo off
setLocal EnableDelayedExpansion

set limit=20000
set file=export.csv
set lineCounter=1
set filenameCounter=1

set name=
set extension=
for %%a in (%file%) do (
    set "name=%%~na"
    set "extension=%%~xa"
)

for /f "tokens=*" %%a in (%file%) do (
    set splitFile=!name!-part!filenameCounter!!extension!
    if !lineCounter! gtr !limit! (
        set /a filenameCounter=!filenameCounter! + 1
        set lineCounter=1
        echo Created !splitFile!.
    )
    echo %%a>> !splitFile!

    set /a lineCounter=!lineCounter! + 1
)

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读