如何使用grep精确匹配一个单词

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用grep精确匹配一个单词相关的知识,希望对你有一定的参考价值。

多用man命令,这是man page的解释
grep [OPTIONS] PATTERN [FILE...]
比如我要找 product 这个单词在 abc.txt 文件里
grep "product" abc.txt
参考技术A grep -x word file

完整匹配某个词语

grep 精确匹配

使用grep实现精确过滤的五种方法
(1)当被过滤的内容占据一行时
[[email protected] scripts]# cat oldboy.log       
200
0200
2000
[[email protected] scripts]# grep "\b200\b" oldboy.log 
200 #<==正则按单词匹配
[[email protected] scripts]# grep -w "200" oldboy.log                  
200 #<==按单词匹配
[[email protected] scripts]# grep -x "200" oldboy.log                  
200 #<==按整行匹配
[[email protected] scripts]# grep "^200$" oldboy.log 
200 #<==正则开头结尾匹配,相当于整行匹配
[[email protected] scripts]# grep -E "\<200\>" oldboy.log 
200 #<==扩展正则
(2)当被过滤的内容占据一行的一部分
[[email protected] scripts]# cat oldboy.log 
200 oldboy
0200 oldgirl
2000 littleboy
[[email protected] scripts]# grep "\b200\b" oldboy.log
200 oldboy
[[email protected] scripts]# grep -w "200" oldboy.log
200 oldboy
[[email protected] scripts]# grep -x "200" oldboy.log
#<==按整行匹配,所以没结果
[[email protected] scripts]# grep -x "200 oldboy" oldboy.log
200 oldboy
[[email protected] scripts]# grep "^200$" oldboy.log
#<==按整行匹配,所以没结果
[[email protected] scripts]# grep "^200 oldboy$" oldboy.log
200 oldboy
[[email protected] scripts]# grep -E "\<200\>" oldboy.log 
200 oldboy

以上是关于如何使用grep精确匹配一个单词的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 sed 在一行中匹配一个或另一个单词

如何让 grep 打印每个匹配行下方和上方的行? [复制]

Python:使用列表和数据框精确匹配单词

grep 精确匹配

通过精确的单词匹配过滤熊猫数据框

Ag / Grep 仅精确匹配搜索