-w, --word-regexp
Select only those lines containing matches that form whole
words. The test is that the matching substring must either be
at the beginning of the line, or preceded by a non-word
constituent character. Similarly, it must be either at the end
of the line or followed by a non-word constituent character.
Word-constituent characters are letters, digits, and the
underscore.
de man grep
También puedes usar esto:
echo "this is the theater" |grep --color '\bthe\b'
Porque una palabra es lo mismo con -w.
Pero si necesita buscar varios patrones, puede usar \b; de lo contrario, todos los patrones se tratarán como palabras si -w está en uso.
Por ejemplo:
grep -w -e 'the' -e 'lock'
resaltará el y el candado pero no el candado/candado, etc.
Con \b puede tratar cada patrón -e de manera diferente.
Pruébalo aquí.
Puede comprobar la presencia del principio (resp. final) de una palabra con el marcador \<
(resp. \>
).
Así,
grep "\<the\>" << .
the cinema
a cinema
the theater
a theater
breathe
.
da
the cinema
the theater