grep--命令详解

grep:文本过滤工具

功能:用于从文本文件或管道数据流中筛选匹配的行及数据,配合正则一块使用功能会更加强大。

语法格式:

grep          【options】   【pattern】   【file】

grep            参数               匹配模式      文件

参数 -v     显示不匹配的行(用于排除)

[root@template ~ 14:09:56]]# cat test.txt
zhangsan
lisi
wangwu
liudehua
zhangxueyou
[root@template ~ 14:10:00]]# grep -v lisi test.txt
zhangsan
wangwu
liudehua
zhangxueyou

 

参数 -n   显示匹配行及行号

[root@template ~ 14:10:07]]# grep -n "wangwu" test.txt
3:wangwu

[root@template ~ 14:11:00]]# grep -n "." test.txt   #匹配所有行的行号
1:zhangsan
2:lisi
3:wangwu
4:liudehua
5:zhangxueyou

参数 -i   不区分大小写(是适应单字符)

[root@template ~ 14:13:37]]# grep "lisi" test.txt
[root@template ~ 14:13:44]]# grep -i "lisi" test.txt
LISI
[root@template ~ 14:13:49]]# cat test.txt
zhangsan
wangwu
liudehua
zhangxueyou
LISI

参数 -E  使用egrep命令  egrep==grep -E 

[root@template ~ 14:13:58]]# egrep "wangwu|zhangsan" test.txt   
zhangsan
wangwu

参数 -c  计算匹配字符串出现的数量

[root@template ~ 14:16:59]]# grep -c "wangwu" test.txt
2

参数 -o  只输出匹配的内容

[root@template ~ 14:17:09]]# grep -o "wangwu" test.txt
wangwu
wangwu

 

如何取ip地址

[root@template ~ 14:27:44]]# ip a s eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:4b:80:be brd ff:ff:ff:ff:ff:ff
inet 10.0.0.230/24 brd 10.0.0.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::d0dc:1fc7:38d0:bfcc/64 scope link noprefixroute
valid_lft forever preferred_lft forever

[root@template ~ 14:26:26]]# ip a s eth0|grep "inet"|egrep "([0-9]{1,3}\.?){4}" -o|head -1
10.0.0.230

 

posted on 2021-03-11 14:28  弓长三寿  阅读(855)  评论(0编辑  收藏  举报