输入文件:文件

aaaa
bbbb
cccc
dddd
ffff  *
==================
Schedule
end of file

我想在“日程安排”的2-3行之前插入zzzz
但它必须检查该行中是否有任何单词可用。如果可用,则将zzzz插入下一行
输入文件:文件
aaaa
bbbb
cccc
dddd
ffff  *
zzzz
==================

Schedule
end of file

最佳答案

目前还不清楚before 2-3 lines的真正含义,但我认为这可能是您想要的:

$ cat tst.awk
NR==FNR {
    if (/Schedule/) {
        tgts[NR-2]
    }
    next
}
{ print }
(FNR in tgts) && /ffff/ { print "zzzz" }

$ awk -f tst.awk file file
aaaa
bbbb
cccc
dddd
ffff  *
zzzz
==================
Schedule
end of file

10-08 09:43