grep

1. grep的与、或、非: grep -E : egrep

1.1 AND : grep与操作
1
2
3
4
5
6
7
8
# 1. ".*"
$ grep -E 'first.*second.*'

# 2. grep | grep
$ grep 'first' | grep 'second'

# 3. egrep
$ egrep 'first.*second'
1.2 OR : 或操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 1. 不带-E选项: \|
$ grep 'first\|second'

# 2. 使用-E选项可以扩展选项为正则表达式
$ grep -E 'first|second'

# 3. egrep等同于grep -E
$ egrep 'first|second'

# 3.1 匹配数字开头
$ egrep '^[0-9]'
$ egrep '^[0-9][0-9]' #两个数字开头

# 4. 使用grep -e选项只能传递一个参数, 可以用多个-e
$ grep -e first -e second
1.3 NOT : grep -v非操作
1
2
# 1.
$ grep -v 'first'
1.4 精确匹配字符串
1
2
3
4
5
6
7
8
9
互联网金融
互联网电子商务
互联网 即时通讯软件
搜索 互联网 
互联网信息流

$ grep -w "互联网"
互联网 即时通讯软件
搜索 互联网

2. 打印匹配行前后n行: grep -A -B -C

2.1 显示前后10行
1
$ grep -C 10 "Hello"
2.2 显示前面10行
1
$ grep -B 10 "Hello"
2.3 显示后面10行
1
$ grep -A 10 "Hello"