如何使用UNIX将标头附加到多标头csv文件中的其余行



我有一个csv文件,其中的数据如下:

header1
abc
def
header2
ghi
jkl
header3
mno
pqr

我需要如下输出:

header1 header1
header1 abc
header1 def
header2 header2
header2 ghi
header2 jkl
header3 header3
header3 mno
header3 pqr

有人能告诉我如何在UNIX 中实现这一点吗

使用awk:

$ awk 'FNR%3==1{ hdr=$1 }{ print hdr,$1 }' file
header1 header1
header1 abc
header1 def
header2 header2
header2 ghi
header2 jkl
header3 header3
header3 mno
header3 pqr

最新更新