用于分割 .csv 文件的批处理文件

2024-03-29

我有一个非常大的 .csv 文件(>500mb),我希望在命令提示符下将其分解为较小的 .csv 文件。 (基本上是试图在Windows中找到Linux“分割”功能”。

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

有没有人遇到过类似的问题,你是如何解决这个问题的?


试试这个:

@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文件,限制为20000行。您所要做的就是更改!file! and !limit!相应地变化。希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于分割 .csv 文件的批处理文件 的相关文章

  • 创建另一个进程的 HWND 的子窗口? (例如屏幕保护程序预览)

    我正在用 Java 编写一个屏幕保护程序 它主要适用于 Windows 但我更希望它尽可能便携且实用 根据http support microsoft com kb 182383 http support microsoft com kb
  • 由于保存之前/之后的 CSV 差异而导致错误解析(Java w/ Apache Commons CSV)

    我有一个 37 列的 CSV 文件 我正在使用 Apache Commons CSV 1 2 在 Java 中解析该文件 我的设置代码如下 initialize FileReader object FileReader fileReader
  • 构建 jar 后无法运行 exe

    我制作了一个简单的实用应用程序 其中我有一个要运行的exe文件 我通过使用它来运行 Runtime getRuntime exec this getClass getResource filename exe getPath 当我从 ide
  • 如何用C语言测量时间?

    我想知道某个代码块执行了多长时间 大约 像这样的事情 startStopwatch do some calculations stopStopwatch printf lf timeMesuredInSeconds How 您可以使用clo
  • 连接到 VPN 时 HttpClient.GetAsync 超时

    当系统不使用 VPN 时 C 4 5 2 框架 HttpClient GetAsync 方法在 Windows 10 上运行良好 连接 VPN 后 对同一地址的 HttpClient GetAsync 调用只会阻塞 直到超时 Edge 和
  • 如何在Windows Git shell中运行./script.sh?

    也许这很尴尬 但是当我在 Git shell 中工作时 我无法在 Windows 上运行 sh 文件 也许我必须安装一些东西 但我认为 Git 会支持 bash 命令 我知道 Windows 不使用 sh 文件 我正在执行安装步骤游戏结束
  • 如何在byte[]中制作csv?

    我想知道我应该如何创建一个在 byte 中创建 csv 文件的方法 目前我正在使用这样的东西 public byte makeCsv StringBuffer csv new StringBuffer csv append columnhe
  • Windows 服务器上的 .htaccess 文件

    我进行了研究 发现我的 htaccess 文件无法在我的新 Windows 服务器上运行 我发现我应该使用 web config 我尝试了一下 但没有任何效果 然后我发现我可以使用 htaccess 文件 但我必须将其命名为其他名称 例如
  • 从 Windows 中的 C++ 应用程序进行 Thrift 调用

    正如标题所示 我有一个用 C 编写的 Windows 应用程序 我需要从中调用远程 Thrift 服务 说实话 我对这个主题有点迷失 http wiki apache org thrift ThriftInstallationWin32 h
  • 如何使用 python 操作系统更改驱动器?

    我正在尝试更改当前目录C to Y 我试过 import os os chdir Y 但我不断收到错误消息 提示无法找到驱动器 本质上我正在寻找相当于 cd d cmd 中的命令 你确定吗Y 确实是有效的驱动器号吗 Try os chdir
  • 从 csv 中读取 pandas 数据帧,以非固定标头开始

    我有许多数据文件是由我的实验室中使用的一些相当黑客的脚本生成的 该脚本非常有趣 因为它在标头之前附加的行数因文件而异 尽管它们具有相同的格式并具有相同的标头 我正在编写一个批处理来将所有这些文件处理为数据帧 如果我不知道位置 如何让 pan
  • 如何访问窗口?

    我正在尝试使用其句柄访问特定窗口 即System IntPtr value Getting the process of Visual Studio program var process Process GetProcessesByNam
  • 如何设置 CMake 与 clang 交叉编译 Windows 上的 ARM 嵌入式系统?

    我正在尝试生成 Ninja makefile 以使用 Clang 为 ARM Cortex A5 CPU 交叉编译 C 项目 我为 CMake 创建了一个工具链文件 但似乎存在错误或缺少一些我无法找到的东西 当使用下面的工具链文件调用 CM
  • 使用 PowerShell 检查 AD 中是否存在组

    我想为该组创建代码来检查该组是否存在 但是 我无法开始工作 因为它成功地将用户和组的部分成员仅添加到一个组中 而不是其他组 因为我设法在活动目录中创建一个组并从 csv 中读取 这是我的代码和结果 似乎在成功添加用户并添加组成员后我总是收到
  • 批量读取INI文件并将其设置为全局变量

    我有一个批处理文件 它已经做了很多事情 并试图扩展它以从 ini 文件中获取一些数据 例如 ini 文件看起来像这样 Settings1 Text Text Text1 Text Text2 Text Settings2 Text Text
  • 午夜后时间设置不正确

    我使用以下命令以更易读的格式获取当前日期 时间 set day date 4 2 set mth date 7 2 set yr date 10 4 set hur time 0 2 set min time 3 2 set bdate d
  • C++ 在后台运行 system(),dir 路径中带有空格,+输出到文本文件

    我正在尝试使用一堆选项运行 tshark exe 并输出到 fil 见下文 然而 我真的坚持要使用的 system 命令的正确语法 我以前在这里得到过帮助 甚至已经让它与 dos for 循环一起工作 但这超出了我的能力范围 我已经尝试了各
  • 自动安排并执行 PHP 脚本

    我编写了一个 PHP 脚本 它生成一个包含数据库中所有表的 SQL 文件 我想要做的是每天或每 n 天执行这个脚本 我读过有关 cron 作业的内容 但我使用的是 Windows 如何在服务器上自动执行脚本 您需要添加计划任务来调用 URL
  • 多重处理:如何从子进程重定向标准输出?

    注意 我见过multiprocessing Process 的日志输出 https stackoverflow com questions 1501651 log output of multiprocessing process 不幸的是
  • 使用 Ruby CSV 标头转换器

    假设我有以下课程 class Buyer lt ActiveRecord Base attr accesible first name last name 以及 CSV 文件中的以下内容 First Name Last Name John

随机推荐

  • android - 上传文件时发送参数

    我有这段代码http pastebin com VrMNuxcv http pastebin com VrMNuxcv它成功地将文件从我的 android 上传到服务器 不过 我希望能够随它一起发送几个字符串参数 如果可能的话 您能否告诉我
  • 在 html 字符串中渲染 ViewComponent

    假设我有一个名为 MyComponent 的 ViewComponent 从 ASP NET Core 1 1 开始 我可以通过在 razor view cshtml 页面中编写此 ViewComponent 来呈现此 ViewCompon
  • 在 Scilab 中求解 ODE

    我正在尝试做一些电路分析Scilab通过解决一个ODE 但我需要改变一个ODE取决于函数的当前值 我已经实施了该解决方案Scala using RK4方法并且效果完美 现在我正在尝试做同样的事情 但是使用标准函数Scilab 但它不起作用
  • 如何在 Delphi 7 中使用 Indy 10 进行 NTLM 身份验证?

    我想在 Delphi 7 中使用 Indy 10 组件进行 NTLM 身份验证 这是我的源代码 uses Windows Messages SysUtils Variants Classes Graphics Controls Forms
  • 如何使 matplotlib 图表看起来像这样专业完成? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 默认的 matplotlib 图表看起来确实没有吸引力 甚至不专业 我尝试了几个包 包括seaborn和prettyplotlib 但这两个都只
  • Crashlytics 控制台显示加载程序、已启用 Crashlytics 且设置正确,但无法获取崩溃报告?

    我有一个具有两种构建类型的 Android 应用程序 一是Debug另一个是Release the issue我面临的是我的Debug Build正在向 Crashlytics 和我的发送崩溃报告Release Build不会向 Crash
  • Google App 脚本中的线程

    是否可以在 Google Apps 脚本中进行线程处理 目前我正在以编程方式设置触发器来执行线程 有没有更好的办法 布鲁斯 麦克菲尔森就是一个很好的例子 他的例子Apps 脚本中的并行处理 https ramblings mcpher co
  • 我在使用 m2eclipse 时遇到构建错误,但在命令行上使用 maven2 时却没有构建错误 - 是我的 m2eclipse 配置错误吗?

    我安装了 m2eclipse 在 Eclipse 中构建一个 java 项目 我导入项目如下 Import gt Maven gt Existing Maven Projects gt Import Maven Projects gt Se
  • Intellij 检查更新:无法连接

    下面的屏幕截图已经出现好几天了 其他人看到这个吗 注意 为了确保这不是一般的连接错误 除了能够发布此软消息之外 我还进行了 github pull 这有力地表明我的网络代理已被正确禁用 并且工作正常 所以这条消息令人费解 要解决此问题 选择
  • 为什么windbg命令以.开头或者 !

    之间有什么区别吗 和 WinDbg 中有不同类型的命令 常规命令 例如kb适用于调试会话 例如 显示堆栈转储等 元命令以点为前缀 例如 load 元命令适用于调试器本身 例如 加载扩展 显示帮助等等 扩展命令以感叹号为前缀 例如 analy
  • 通过克隆/推/拉传播远程位置

    我们的项目使用了几个第三方开源库 其中一些需要自定义修改 对于每个库 我们创建了自己的本地 git 存储库 并将原始源位置添加为vendor远程 从那里克隆 根据需要修改它并将其推送到内部远程存储库 我们称之为origin 然后 这些存储库
  • 从数组公式返回单个单元格

    我想从这个公式中获得一个值 即收盘价 GoogleFinance NASDAQ AAPL close 12 13 2012 1 1 相反 此公式填充 2 个标题行 日期 收盘价 然后填充两个值 日期和收盘价 529 69 有没有办法只返回收
  • android.hardware.camera2.CaptureRequest 可以与 OpenCV 一起使用吗?

    我已经为此工作好几天了 我有一个基于 OpenCV JavaCameraView 的项目 我正在尝试与 Android 集成android hardware camera2 CaptureRequest我用来控制相机对光的敏感度的对象 Th
  • 当尝试将重复对象插入集合时,正确的 .NET 异常抛出是什么?

    我有一个 Asset 对象 它有一个属性 AssignedSoftware 它是一个集合 我想确保同一个软件不会多次分配给资产 在 Add 方法中 我检查软件是否已存在 如果存在 我想抛出异常 是否有我应该抛出的标准 NET 异常 或者最佳
  • 将 pandas 0.13.0“打印数据帧”更改为像早期版本中那样打印数据帧

    在 pandas 的新版本 0 13 0 中 数据帧 df 使用以下命令打印在一长串数字中 df or print df 而不是像以前那样进行概述 现在只能使用 df info 是否可以更改默认的 df 或 print df 命令以显示 I
  • 将 youtube url 转换为 iframe 嵌入代码

    我一直在尝试找到一个正则表达式模式来用 iframe 嵌入代码 C 替换字符串中的所有 youtube URL 显然必须提取视频 ID 以下是应匹配的 url 模式 http www youtube com watch v bSiDLCf5
  • 调用异步任务

    我正在播放广播流 我想在流中的歌曲发生变化时生成通知 我正在使用streamscraper http code google com p streamscraper 来获取当前流的元数据 并且我尝试在元数据更改时生成通知 这是我为实现此目的
  • Firebase 存储同步上传

    我正在尝试上传到 GcmTaskService 内的 Firebase 存储 我想同步上传 但所有上传方法 putBytes putFile 都是异步的 我没有找到任何方法来等待上传完成 有什么办法可以同步上传吗 是的 如果您不在 UI 线
  • 返回关联 PHP 数组的前 n 个值?

    我有一个 PHP 数组 排序后如下所示 Array 542 gt 30 588 gt 29 77 409 gt 19 9 237 gt 19 47 457 gt 17 73 410 gt 15 86 实际的数组相当长 最初 按键按顺序设置
  • 用于分割 .csv 文件的批处理文件

    我有一个非常大的 csv 文件 gt 500mb 我希望在命令提示符下将其分解为较小的 csv 文件 基本上是试图在Windows中找到Linux 分割 功能 这必须是一个批处理脚本 因为我的机器只安装了 Windows 并且请求软件很痛苦