GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Ist es möglich, grep zu verwenden, um nur ganze Wörter aufzunehmen?

 -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.

ab man grep


Sie können auch Folgendes verwenden:

echo "this is the theater" |grep --color '\bthe\b'

Denn ein Wort ist dasselbe wie bei -w.
Aber wenn Sie mehrere Muster suchen müssen, können Sie das \b verwenden, andernfalls werden alle Muster als Wörter behandelt, wenn -w verwendet wird.

Zum Beispiel:

grep -w -e 'the' -e 'lock'

hebt das und Schloss hervor, aber nicht Tastensperre /Vorhängeschloss usw.

Mit \b können Sie jedes -e-Muster unterschiedlich behandeln.

Testen Sie es hier.


Mit der Markierung \< können Sie das Vorhandensein eines Wortanfangs (bzw. -endes) testen (bzw. \> ).

Also

grep "\<the\>" << .
the cinema
a cinema
the theater
a theater
breathe
.

gibt

the cinema
the theater

Linux
  1. Ist es möglich, `find -exec Sh -c` sicher zu verwenden?

  2. Grep für eine Zeile, die nur 5 oder 6 Zahlen enthält?

  3. So verwenden Sie Grep-Befehle unter Linux oder FreeBSD

  4. Es ist möglich, eine .dll unter Linux zu verwenden

  5. Grep in einer riesigen Logdatei (>14 GB) nur die letzten x GB?

So verwenden Sie den grep-Befehl unter Linux/UNIX

So verwenden Sie den Grep-Befehl unter Linux + Nützliche Grep-Beispiele

Wie man den Befehl „grep“ gut nutzt

So verwenden Sie den grep-Befehl unter Debian 10

So verwenden Sie grep unter Linux

Verwendung des grep-Befehls unter Linux