Chinaunix
标题:
如何返回查找行以及前三行呢
[打印本页]
作者:
leonqin0101
时间:
2010-11-02 02:30
标题:
如何返回查找行以及前三行呢
请教各位高手,我想查找一个文件中的含有regexp的行以及前三行,用sed或者awk怎么实现呢?
多谢了!
作者:
yinyuemi
时间:
2010-11-02 03:21
grep专门干这个的
作者:
yinyuemi
时间:
2010-11-02 04:09
本帖最后由 yinyuemi 于 2010-11-02 14:28 编辑
awk 试试这个:
awk '{a[NR]=$0} END {for (i=1; i<=NR; i++) if(a[i]~/regexp/) print a[i-3],"\n"a[i-2],"\n"a[i-1],"\n"a[i]}' file
复制代码
作者:
kingoftime3
时间:
2010-11-02 10:27
grep:
seq 10 | grep -B 2 5
复制代码
sed:
seq 10 | sed -n -e '1,3{/5/{p;q};N};:a;/5/!{N;D;ta};p'
复制代码
作者:
ywlscpl
时间:
2010-11-02 10:49
awk '/xxxx/{print a[(NR+1)%4],a[(NR+2)%4],a[(NR+3)%4],$0}{a[NR%4]=$0}' file
作者:
xindi10631
时间:
2010-11-02 11:05
grep是最简单的!
作者:
cjaizss
时间:
2010-11-02 11:06
grep -A
作者:
L_kernel
时间:
2010-11-02 23:35
grep -B num
grep --before-context=num
打印匹配的行,以及前num行~~
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2