我对非边界词的概念感到困惑,因为 grep 命令没有返回我期望它返回的内容。我正在寻找仅匹配malloc单词而不匹配lmmmalloc的行,因此我决定使用:
grep -inr '\bmalloc\b' .
它返回以下内容:
./xxxx.xx:918: /* Free the malloc before exiting the function. */
使用以下命令修改 grep 命令以检索包含lmmmalloc的所有行后:
grep -inr '\Bmalloc\B' .
我希望 \B 返回包含子字符串malloc的行,而不是与之前发布的相同结果。我希望结果如下:
grep -inr '\blmmmalloc\b'
./xxxx.xx:376: string_temp = (char *) lmmmalloc (cxp,
我的理解是否有缺陷,如果是这样,有人可以澄清和纠正 grep 命令吗?
我正在使用 GNU grep 2.5.1。