かなり規則的で、次のような巨大なテキスト ファイル (約 5 億行のテキスト) を分割しようとしています。
-- Start ---
blah blah
-- End --
-- Start --
blah blah
-- End --
...
どこで ... は繰り返しパターンを意味し、「何とか」は可変長〜2000行です。1人目は別れたい
-- Start --
blah blah
-- End --
別のファイルにブロックし、可能な方法で元のファイルから削除します。
理想的な解決策は、元のファイルから初期ブロックを切り取って、巨大な初期ファイルの末尾をロードせずに新しいファイルに貼り付けることです。
次の方法で csplit を試みました。
csplit file.txt /End/+1
これは有効な方法ですが、時間的にはあまり効率的ではありません。
編集:最初のブロックではなく最後の「開始-終了」ブロックをファイルから削除すると解決策はありますか?