将标头和预告片之间的记录复制到一个新文件中,包括标头和预告片

将标头和预告片之间的记录复制到一个新文件中,包括标头和预告片

我有一个文件,其中有多个标题、详细信息和预告片记录。(固定长度)

例如我的文件看起来像

Habcd20200317
R123 abc def
R234 dfg thg
T2 2018907
Hagfd20200316
R346 adf thg
R456 tsh ahs
T3 2018937

输出文件应另存为20200317.txt

Habcd20200317
R123 abc def
R234 dfg thg
T2 2018907

20200316.txt

Hagfd20200316
R346 adf thg
R456 tsh ahs
T3 2018937

分别。

我怎样才能在unix shell脚本中实现这一点?请帮忙。

答案1

由于您的记录具有固定长度,因此您可以使用模算术:

awk 'NR%4 == 1 {outfile = substr($0,6) ".txt"} {print > outfile}' file

相关内容