Как сделать так, чтобы grep совпадал только если вся строка совпадает? - PullRequest
91 голосов
/ 17 января 2011

У меня есть эти:

$ cat a.tmp
ABB.log
ABB.log.122
ABB.log.123

Я хотел найти точное соответствие ABB.log.

Но когда я сделал

$ grep -w ABB.log a.tmp
ABB.log
ABB.log.122
ABB.log.123

, он показывает их все.

Могу ли я получить то, что хотел, используя grep?

Ответы [ 12 ]

0 голосов
/ 15 марта 2013
    $ cat venky
    ABB.log
    ABB.log.122
    ABB.log.123

    $ cat venky | grep "ABB.log" | grep -v "ABB.log\."
    ABB.log
    $

    $ cat venky | grep "ABB.log.122" | grep -v "ABB.log.122\."
    ABB.log.122
    $
0 голосов
/ 11 сентября 2012

Мне нужна была эта функция, но я также хотел убедиться, что я не возвращаю строки с префиксом до ABB.log:

  • ABB.log
  • ABB.log.122
  • ABB.log.123
  • 123ABB.log

grep "\WABB.log$" -w a.tmp
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...