awk 下如何打印当前匹配行的上一行

 我来答
cnbubble
2018-06-01 · TA获得超过2607个赞
知道大有可为答主
回答量:1990
采纳率:83%
帮助的人:770万
展开全部
由于awk是按行进行处理的,一行处理完处理下一行,所以为了输出上一行的内容,需要将行的内容先保存下来
示例:
awk '{d[NR]=$0}
/正则/{print d[NR-1]}' file
说明,第一句将行内容保存在一个“数组”中【awk中的数组更像是字典】
第二句如果某一行能匹配,则打印之前保存的数组中的内容,数组的index是当前行号减去1,即上一行的行号。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式