$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