使用AWK获取文本并在csv中循环

使用AWK获取文本并在csv中循环,csv,awk,Csv,Awk,我是awk的新手,我想问。。。 我有一个像这样的csv文件 IVALSTART IVALEND IVALDATE 23:00:00 23:30:00 4/9/2012 STATUS LSN LOC K lskpg 1201 K lntrjkt 1201 K lbkkstp 1211 IVALSTART IVALEND 23:00:00 23:30:00 STATUS LSN LOC IVALDATE

我是awk的新手,我想问。。。 我有一个像这样的csv文件

IVALSTART  IVALEND   IVALDATE
23:00:00   23:30:00  4/9/2012

STATUS  LSN      LOC
K       lskpg    1201
K       lntrjkt  1201
K       lbkkstp  1211
IVALSTART  IVALEND
23:00:00   23:30:00

STATUS  LSN      LOC   IVALDATE
    K   lskpg    1201   4/9/2012
    K   lntrjkt  1201   4/9/2012
    K   lbkkstp  1211   4/9/2012
我想这样改变

IVALSTART  IVALEND   IVALDATE
23:00:00   23:30:00  4/9/2012

STATUS  LSN      LOC
K       lskpg    1201
K       lntrjkt  1201
K       lbkkstp  1211
IVALSTART  IVALEND
23:00:00   23:30:00

STATUS  LSN      LOC   IVALDATE
    K   lskpg    1201   4/9/2012
    K   lntrjkt  1201   4/9/2012
    K   lbkkstp  1211   4/9/2012
在awk里怎么做

谢谢并致以最良好的问候

试试这个:

awk '
NR == 1 { name = $3; print $1, $2 }
NR == 2 { date = $3; print $1, $2 }
NR == 3 { print "" }
NR == 4 { $4 = name; print } 
NR >  4 { $4 = date; print }
' FILE

如果需要格式化,则需要使用适当的说明符将
print
更改为
printf

我不会称之为csv文件。