File 基于模式在Linux上拆分文件
需要一个快速的Linux提示 我有一个文件,但将有多个记录的批处理 像 我需要将其拆分为多个文件,从“HDR”(包含)到下一个HDR(不包含)File 基于模式在Linux上拆分文件,file,unix,awk,split,File,Unix,Awk,Split,需要一个快速的Linux提示 我有一个文件,但将有多个记录的批处理 像 我需要将其拆分为多个文件,从“HDR”(包含)到下一个HDR(不包含) 以这种方式,如果文件中有100个批,我需要将其拆分为4个文件,每个文件25个 awk救援 awk '/HDR/{c++} {print > FILENAME"_"c }' file 或者更一般地,在分割文件中获取n模式,例如n=3 awk -v n=3 '/HDR/{k=int(c/n)+1; c++} {print > FILENAME"
以这种方式,如果文件中有100个批,我需要将其拆分为4个文件,每个文件25个
awk
救援
awk '/HDR/{c++} {print > FILENAME"_"c }' file
或者更一般地,在分割文件中获取n
模式,例如n=3
awk -v n=3 '/HDR/{k=int(c/n)+1; c++} {print > FILENAME"_"k }' file
awk
救援
awk '/HDR/{c++} {print > FILENAME"_"c }' file
或者更一般地,在分割文件中获取n
模式,例如n=3
awk -v n=3 '/HDR/{k=int(c/n)+1; c++} {print > FILENAME"_"k }' file
这是一个伟大的。。。卡拉卡法等分。我有预感阿克会来营救的。如何将此扩展到我选择的计数?假设一个文件中的批数为x。它取决于内容,您将获得与文件中模式计数相同的分割文件数。或者,也许你在问别的问题?我们很接近。我想问的是,我们现在是否可以将它们分成5个模式匹配,然后写入一个文件。类似于awk'/HDR/{c+5}{print>FILENAME“\uu”c}”文件,好像在找到一定数量的匹配项之前,我不会写入分割的文件。@karakfa因为文件描述符的数量有限,所以在执行递增
c
之前关闭最后一个文件可能很重要。另外:+1。这是一个伟大的。。。卡拉卡法等分。我有预感阿克会来营救的。如何将此扩展到我选择的计数?假设一个文件中的批数为x。它取决于内容,您将获得与文件中模式计数相同的分割文件数。或者,也许你在问别的问题?我们很接近。我想问的是,我们现在是否可以将它们分成5个模式匹配,然后写入一个文件。类似于awk'/HDR/{c+5}{print>FILENAME“\uu”c}”文件,好像在找到一定数量的匹配项之前,我不会写入分割的文件。@karakfa因为文件描述符的数量有限,所以在执行递增c
之前关闭最后一个文件可能很重要。另外:+1.StackOverflow是关于帮助人们修复编程代码的。对免费编码服务、教程、研究、工具、建议、库和代码的请求是离题的。在这里发布更多Qs之前,请阅读、、和。给我们看看你的代码!祝你好运。StackOverflow是关于帮助人们修复编程代码的。对免费编码服务、教程、研究、工具、建议、库和代码的请求是离题的。在这里发布更多Qs之前,请阅读、、和。给我们看看你的代码!祝你好运