所以我有一个文件,并且有一个字符串,我想通过在其上方放置标记线来突出显示该字符串。我可以使用 sed 轻松完成此操作:
cat flog.txt |sed '/foo/ i===========B' >t.lis
Run Code Online (Sandbox Code Playgroud)
这工作正常,因为我现在有一个看起来像这样的文件
===========B 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉 ===========B 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉 布拉布拉布拉 ===========B 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉 ===========B 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉
但是我希望“==========B”行的计数为 1、2、3 等,因此文件看起来像这样:
===========B 1 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉 ===========B 2 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉 布拉布拉布拉 ===========B 3 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉 ===========B 4 布拉布拉布拉福布拉布拉布拉 布拉布拉布拉
等等,有人可以帮忙吗?
谢谢,
这awk应该可以完成这项工作:
awk '/foo/{ print "===========B " ++i } 1' file
Run Code Online (Sandbox Code Playgroud)