假设我有一个 100GB 的文件,我想将其拆分为多个部分,不同的部分由固定标记分隔。标记只是一个大约 20 个字符的固定字符串,因此要匹配的正则表达式只是 /MARKER/。
鉴于这个低复杂度的正则表达式,如果我运行
csplit file /MARKER/
我希望 csplit 只读取小块的文件,以保持其内存占用较低。它真的这样做吗?或者它将整个文件读入内存,然后处理内存中的全部内容?
假设我有一个 100GB 的文件,我想将其拆分为多个部分,不同的部分由固定标记分隔。标记只是一个大约 20 个字符的固定字符串,因此要匹配的正则表达式只是 /MARKER/。
鉴于这个低复杂度的正则表达式,如果我运行
csplit file /MARKER/
我希望 csplit 只读取小块的文件,以保持其内存占用较低。它真的这样做吗?或者它将整个文件读入内存,然后处理内存中的全部内容?