您的位置:首页 > 运维架构 > Linux

Linux grep Tips

2013-12-14 00:32 295 查看
$grep -5 'parttern' inputfile //打印匹配行的前后5行

$grep -C 5 'parttern' inputfile //打印匹配行的前后5行

--找出不包含ab的行
grep -v ab inputfile

-i: 忽略大小写
-A num: 打印匹配行和后面num行
-B num: 打印匹配行和前num行
[oracle@odilab tt]$ cat 1.txt
z,1
a,a
ab,ab
1,Z
C,C
c,c
a,a
[oracle@odilab tt]$ grep -A 2 "z" 1.txt
z,1
a,a
ab,ab
[oracle@odilab tt]$ grep -B 1 "c" 1.txt
C,C
c,c
-o 只显示匹配的部分 Print only the matched (non-empty) parts of a matching line, with each such part on a separate
output line.
$ echo "abcdefg" | grep -o "abc"
abc


经试验,Oracle Linux 下bash中+需要加\, 而*不需要。

/proddev/etldev/roam_monitor/DATA> cat 2.txt

1
ab
123

/proddev/etldev/roam_monitor/DATA> grep "[0-9]+" 2.txt
/proddev/etldev/roam_monitor/DATA> grep "[0-9]\+" 2.txt
1
123
/proddev/etldev/roam_monitor/DATA> grep "[0-9]*" 2.txt

1
ab
123

/proddev/etldev/roam_monitor/DATA> grep "[0-9]\*" 2.txt
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: