例如文件:
work hard
chinaunix
shell
linux
hello world
work hard
chinaunix
shell
121
3454
2344
dedfrgr
dfvf
linux
3434
4556
8798
我想输出"linux"所在行的前后2行
#cat 3.log | grep -A2 linux
linux
hello world
work hard
--
linux
3434
4556
解决方法:
方法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