问题标签 [csplit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
regex - 使用正则表达式告诉 csplit 在哪里拆分文件
我有一个大文本文件,其内容设置如下:
我正在尝试使用csplit
.
单个文件的内容格式如下:
我希望能够像这样正则表达式---,换行符和标题---\ntitle
但我无法选择它...</p>
我尝试了很多变化都无济于事。我不断得到“不匹配”。
xml - csplit - 我做错了什么?
我有这个 .xml 文件:
我正在尝试使用 csplit 来仅获取文本部分。这就是我想出的。
regex - 分割大文件的最佳方法
我正在尝试拆分一个非常规则的巨大文本文件(约 5 亿行文本),如下所示:
其中 ... 表示重复模式,“blah blah”的长度可变~ 2000 行。我想分开第一个
块到一个单独的文件中,并以最快的方式(运行时,考虑到我将运行多次)从原始文件中删除它。
理想的解决方案是从原始文件中剪切初始块并将其粘贴到新文件中,而不加载巨大的初始文件的尾部。
我通过以下方式尝试了 csplit:
这是一种有效的方法,但在时间上效率不高。
编辑:如果我们从文件中删除最后一个“start-end”块而不是第一个块,是否有解决方案?
text - 在仅包含一个整数的两个连续行上拆分文本文件
我有一个包含 os 3D 坐标列表的长文本文件。文件的开头由这样的标题组成:
之后开始坐标列表。所有的行都由 3 到 7 个数字组成。例如:
列表的总长度等于标题前两个数字的乘积 (10112*2455)。这些是 PTX 文件,其中包含来自激光扫描的文本格式的 3D 点。
关键是该文件是标题和坐标的串联,我想拆分文件在标题上破坏它。理想的解决方案是将文件拆分为两个连续的单个整数行。我正在寻找一个通用的解决方案,例如使用 csplit,但 csplit 一次读取一行,因此它无法检测到两个连续的行。
作为最后的手段,我会自己编写一个软件,但如果有的话,我更愿意找到基于 CLI 工具(Awk?)的解决方案。
有什么想法吗?
谢谢
编辑:示例
假设我有一个包含以下内容的文件:
在这种情况下,我应该得到两个文件,在由单个整数组成的两行中的第一行之前剪切。
作为替代方案,知道两个单数行表示有多少个点组成部分,我们可以说第一个输出文件由前 2*3+10=16(10 行标题和 6 行数据)行组成,第二个文件由随后的 3*1+10=13 行组成(标题总是 10 行,这次是 3 行数据)行。
batch-processing - 使用模式拆分一批文本文件
我有一个包含将近一千个 html 文件的目录。每个文件都需要根据重复出现的模式(标题)分成多个文本文件。我在 Windows 机器上,使用 GnuWin32 工具。
对于单个文件,我找到了一种方法:
但我不知道如何对整个 HTML 文件集重复此操作。这个:
不起作用,这也不起作用:
两者都会导致无效的模式错误。帮助将不胜感激!
bash - 根据行内容拆分巨大的文本文件
帮帮我,伙计们,我真的迷路了。我有一个很大的文本文件,里面有很多链接,我试图根据链接所属的网站将它们分开。我试图用 csplit 命令来做,但我不确定我会怎么做,因为它取决于文本内容。
文本示例:
所以在这个例子中,前两个链接将在一个文件中,剩下的 2 个链接将在一个文件中。这将如何工作?我真的不知道这是否可能。(新手程序员)
csplit - 使用 csplit 拆分 fasta 文件
我需要将一个大的 fasta 文件拆分成较小的文件。我正在尝试以下命令:
csplit -z input.fasta '/>/' '{*}'
但它正在生成大量文件(对于每个“>”)。有没有办法要求只创建两个较小的文件?
谢谢
linux - 如何使用 csplit 命令按天拆分日志文件?
我有一个如下的日志文件:
我怎么能按天拆分文件?我使用了命令:
csplit log /*Jan 01*/ /*Jan 02*/ /*Jan 03*/
但有错误:
所以任何人都可以请告诉我如何解决这个问题?提前致谢。
bash - 根据模式拆分长文件(在标准输出上)并将其输入到循环中
我有一个很长的文件(是的,这是 fasta 格式的 DNA),它实际上是一批拼凑在一起的几个文件,在标准输出上输出。例如:
我想根据模式(此处显示为=
)拆分此流并分别对每个部分执行操作。
我研究过类似的东西
但我担心将大量信息放入变量中会非常低效。此外,我读过 read (...) 本身效率低下。
我想找到类似的东西csplit
将这些片段输出到一个循环中,但我想不出一些聪明的东西。理想情况下,像这样非常糟糕的伪代码:
我也想避免编写临时文件,因为我担心它也会非常低效。
这有任何意义吗?
任何帮助表示赞赏!
shell - 外壳:csplit 命令
我正在尝试对 700 Mo 的文件使用 csplit 命令。我想将文件拆分为 30 个较小的文件,并尊重我用来启动新文件的标签名称。
假设我有 80 个组标签,所以我想生成 30 个文件。那么我如何使用 csplit 来做到这一点。我知道的开始是