linux下的grep工具的-o选项
时间:2008-07-14 来源:jackylau
一般工具都会根据匹配筛选出某一行出来结果,而grep 的-o选项可以根据匹配筛选出某一匹配的部分(part),虽然用到的地方很少,但一用到就爽歪歪了。下面举出例子:
[root@trffic test]# ifconfig|grep -v "127.0.0.1"|grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'|grep -v '255$'|grep -v '\.0$'
192.168.1.243
[root@trffic test]# cat a
Funmbl 1003
Fctl 333
Fuam fff
39r43
[root@trffic test]# egrep -o '^F[a-z]+' a
Funmbl
Fctl
Fuam
另外提一下grep的-m选项.用于指定匹配多少行后,不再匹配。
grep -m866 sda6 test.log |awk '{print $1}'
-A用于同时打印匹配行之后的多少行
-B用于同时打印匹配行之前的多少行
-c用于计算一共匹配了多少行
-v忽略掉匹配的字符
-i忽略大小写
[root@trffic test]# ifconfig|grep -v "127.0.0.1"|grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'|grep -v '255$'|grep -v '\.0$'
192.168.1.243
[root@trffic test]# cat a
Funmbl 1003
Fctl 333
Fuam fff
39r43
[root@trffic test]# egrep -o '^F[a-z]+' a
Funmbl
Fctl
Fuam
另外提一下grep的-m选项.用于指定匹配多少行后,不再匹配。
grep -m866 sda6 test.log |awk '{print $1}'
-A用于同时打印匹配行之后的多少行
-B用于同时打印匹配行之前的多少行
-c用于计算一共匹配了多少行
-v忽略掉匹配的字符
-i忽略大小写
相关阅读 更多 +