我有一个大文本文件,内容设置如下:
---
title: Lorim Ipsum Dolar
---
Lorim ipsum content
---
title: Excelvier whatever
---
Lorim ipsum content goes here.
Run Code Online (Sandbox Code Playgroud)
我正在尝试将此文件拆分为单个文件csplit.
单个文件的内容格式如下:
---
title: Lorim Ipsum Dolar
---
Lorim ipsum content
Run Code Online (Sandbox Code Playgroud)
我希望能够像这样正确地使用---,换行符和标题 ---\ntitle
但是我无法选择它......
csplit -k products.txt '/---[^\n]title/' {99}
Run Code Online (Sandbox Code Playgroud)
我尝试了很多变化无济于事.我一直在"不配".
我试图拆分一个巨大的文本文件(约5亿行文本),这是非常规则的,看起来像这样:
-- Start ---
blah blah
-- End --
-- Start --
blah blah
-- End --
...
Run Code Online (Sandbox Code Playgroud)
其中......暗示重复模式,"blah blah"具有可变长度~2000行.我想分开第一个
-- Start --
blah blah
-- End --
Run Code Online (Sandbox Code Playgroud)
阻塞到一个单独的文件并从FASTEST中的原始文件中删除它(运行时,给定我将运行这么多次)可能的方式.
理想的解决方案是从原始文件中删除初始块并将其粘贴到新文件中,而不加载巨大的初始文件的尾部.
我用以下方式尝试了csplit:
csplit file.txt /End/+1
Run Code Online (Sandbox Code Playgroud)
这是一种有效的方法,但在时间上效率不高.
编辑:如果我们从文件中删除最后一个"开始结束"块而不是第一个块,是否有解决方案?