Linux中如何用grep仅匹配完整独立字符串而非子串
方案1:使用grep单词匹配参数
直接添加-w参数强制匹配独立单词即可,命令如下:
grep -w '002' list.txt
- 参数说明:
-w/--word-regexp会让grep只匹配完整的独立单词,单词边界定义为行首/行尾、非字母/数字/下划线的字符,正好可以排除掉Linux002中作为子串存在的002。 - 不需要额外加
cat管道,grep支持直接读取目标文件,执行效率更高。
方案2:手动指定正则单词边界
如果需要更灵活的正则控制,也可以手动用\b标识单词边界:
grep '\b002\b' list.txt
效果和方案1完全一致,执行后都会只输出预期的002 Linux001行。
内容的提问来源于stack exchange,提问作者MrV
相关产品推荐
相关产品推荐

