我试图在没有成功的情况下拆分每个 x 模式的大文件,我该如何实现?
文件结构:
> ASDF ABCDEFGHIJKWERQWEWQYASTRDTAYDGAHSFDTS
> QWERT ASJDHASDJHASDHASDHASJDHAJDHJHAD
> ASDF ABCDEFGHIJKWERQWEWQYASTRDTAYDGAHSFDTS
> QTRE AGAHDSJHDASJDHASJDHASJHDAJSDHJASHDJASHDJASHJDHASJDHASJDHAJSHDASJHDJASHDJASHDJASHDJASHDJASJDASHDSUHQYWGEYWGYWGQYWDWBCDEFGHIJKWERQWEWQYASTRDTAYDGAHSFDTS
> ASDF ABCDEFGHIJKWERQWEWQYASTRDTAYDGAHSFDTSASHDJASHDJASDHAJSDHAJDHQUHWUDHUHAWUHASUDHUASDHSUDHSU
它有数千行不同长度的行,每个“>”标题有多行。我想将该大文件拆分为每个文件每 100 个“>”标题的较小过滤,这可能吗?
提前致谢!
这是给你的一个小的 perl 脚本。您可以将其另存为
split_files.pl
并以perl split_files.pl input.txt
. 输出将存储在名为 等的文件chunk_0
中chunk_1
。说明:
脚本的诀窍是 line
$/="\n>";
。此行将默认换行符 (\n
) 更改为“换行符+>” (\n>
)。在while循环中,每个以“>”开头的块都被一次使用。我使用了两个计数变量($linecount
和$filecount
)。对行(或本例中的块)进行计数,当此计数达到 100 时,将使用一个新文件进行输出。Python 方法
>
一旦在行首看到特定数量的字符,下面的脚本就会将命令行中给出的文件名拆分为文件。看到的字符数也在命令行中指定。因此语法如下:脚本源
注意:该脚本是为 Python 2 编写的,但与 Python 3 兼容。可以轻松修改为基于变量起始字符串进行拆分。