GNU/Linux >> Tutoriales Linux >  >> Linux

¿Es posible usar grep para recoger solo palabras completas?

 -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

Linux
  1. ¿Es posible usar `find -exec Sh -c` de forma segura?

  2. ¿Usar el comando Grep y localizar?

  3. Utilice el comando grep de Linux

  4. grep coincide solo con líneas en un rango específico

  5. Grep en un archivo de registro enorme (> 14 GB) ¿solo los últimos x GB?

Cómo usar el comando grep en Linux/UNIX

Cómo usar el comando Grep en Linux + Ejemplos útiles de Grep

Cómo hacer un buen uso del comando 'grep'

Cómo usar el comando grep en Debian 10

Cómo usar grep en Linux

Uso del comando grep en Linux