将大文件分成10,000行的文件的命令是什么?

问题描述

我有一个名为 MovieID_NameID_Roles.txt 文件,该文件为1,767,605 KB。

我需要遍历它来解析然后填充数据库表。

我想使用几个小文件而不是一个文件,所以我发现this answer一个有关如何拆分大文本文件的问题。

基于接受的答案,内容为:

每个文件包含10000行:split myLargeFile.txt -l 10000

...但是在第二个屏幕截图的底部,我觉得这是该命令的“更高级”版本,其中包含一些细微之处:

分割MovieID_NameID_Roles.txt MySlice -1 10000 -a 5 -d

因此,我下载并安装了Git / Bash,并在其中运行它:

split MovieID_NameID_Roles.txt MySlice -1 10000 -a 5 -d

但是没有像我期望的那样(或者至少希望如此),将我的超大文件分成10,000行的文件,而是生成了名为1000000000到1000099999的文件,每个文件只有1KB的大小;然后拆分停止工作,并显示错误消息“输出文件后缀已用尽。”:

enter image description here

那我应该使用什么命令将文件分割成每个10,000行的较小文件呢?

解决方法

好像您使用的是“ -1”而不是“ -l”。导致每个文件生成多个文件。

命令应为:

$ split MovieID_NameID_Roles.txt MySlice -l 10000 -a 5 -d