Linux获取特定行的前后几行命令

来源:互联网 发布:圣艾尔摩之火 知乎 编辑:程序博客网 时间:2024/06/05 03:13

Linux获取特定行的前后几行命令

场景:

一般我们都是grep word  filename输出某行,如果想要输出包括该行上下文的n行呢?
比如:
filename:
hello   world
work   hard
chinaunix
shell
linux
hello   world
work   hard
chinaunix
shell


我想输出"linux"所在行的前后2行,得到下面的输出结果:
chinaunix
shell
linux
hello   world
work   hard


-------------------------------------------------------大家先思考一下哦----------------------------------------------





解决方法:
1.grep -C 2 'linux'   
2.grep -w -A2 -B2 'linux'  
## -A2:后两行
-B2:前两行

3.sed -n ':1;N;/linux/{N;N;p;q};3,$D;b1' i


一起学习!

0 0