我必须打印与文件中的确切单词匹配的行号。所以我使用grep -w命令,但我得到多个匹配。如何获得与我的搜索查询完全匹配的行号?
例如
grep -nw "\babc\b" /tmp/test.json
272:{"name": "abc", "imagen": "Application1.png"},
273:{"name": "abc-bcdgroup-deSSL", "imagen": "Application1.png"},
274:{"name": "abc-fb-na", "imagen": "Application1.png"},
275:{"name": "abc-gf3-bmw-comSSL", "imagen": "Application1.png"},
如果我搜索ABC,那么它应该只打印
272:{"name": "abc", "imagen": "Application1.png"}
对此有何建议?
'grep -w'将'-'视为非单词字符,所以'abc-bcd'匹配'\ babc \ b',如预期的那样。如果“word”的定义是“由双引号限定的字符串”,那么'grep -w'是错误的工具。你对“单词”的定义是什么? –