grep 精确匹配
使用
grep
实现精确过滤的五种方法
(1)当被过滤的内容占据一行时
[root@MySQL scripts]# cat oldboy.log 200 0200 2000 [root@MySQL scripts]# grep "\b200\b" oldboy.log 200 #<==正则按单词匹配 [root@MySQL scripts]# grep -w "200" oldboy.log 200 #<==按单词匹配 [root@MySQL scripts]# grep -x "200" oldboy.log 200 #<==按整行匹配 [root@MySQL scripts]# grep "^200$" oldboy.log 200 #<==正则开头结尾匹配,相当于整行匹配 [root@MySQL scripts]# grep -E "\<200\>" oldboy.log 200 #<==扩展正则
(2)当被过滤的内容占据一行的一部分
[root@MySQL scripts]# cat oldboy.log 200 oldboy 0200 oldgirl 2000 littleboy [root@MySQL scripts]# grep "\b200\b" oldboy.log 200 oldboy [root@MySQL scripts]# grep -w "200" oldboy.log 200 oldboy [root@MySQL scripts]# grep -x "200" oldboy.log #<==按整行匹配,所以没结果 [root@MySQL scripts]# grep -x "200 oldboy" oldboy.log 200 oldboy [root@MySQL scripts]# grep "^200$" oldboy.log #<==按整行匹配,所以没结果 [root@MySQL scripts]# grep "^200 oldboy$" oldboy.log 200 oldboy [root@MySQL scripts]# grep -E "\<200\>" oldboy.log 200 oldboy
作者:罗阿红
出处:http://www.cnblogs.com/luoahong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。