Использование grep для печати всех соответствующих строк, не разделенных пробелом

Я просматриваю текстовый файл электронной почты и пытаюсь получить список из определенного домена.

Я бегу:

grep -oh "\w*domain.com\w*" file.txt 

Это находит строки, но только печатает это слово, что означает, что если я запустил команду в этом списке:

 foo abc@notit.com bar baz bcd@domain.com abc xyz cde@adomain.com defg klmn def@notit.com ijk yes efg@efg.domain.com no 

Он вернется

 domain.com adomain.com domain.com 

Я хочу, чтобы он вернул весь адрес электронной почты с помощью «domain.com» в нем:

 bcd@domain.com cde@adomain.com efg@efg.domain.com 

Возможно ли это с помощью grep ? Мне нужно сказать, чтобы он не обрабатывал периоды или знаки @ как разрывы слов.

EDIT: В той же строке есть куча нерелевантных данных, которые я бы предпочел не показывать.

  • содержание grep между двумя стартовыми скобками
  • Заменить текст многострочным шаблоном
  • bash merge 2 списки удаления дубликатов
  • Функция для упрощения grep с часто используемым журналом
  • Найти путь, который имеет конкретную подкаталоги
  • Возьмите информацию из CSV-файла и добавьте его после определенного шаблона
  • Почему grep игнорирует двоичные файлы по умолчанию?
  • Как искать и заменять текст во всех php-файлах в каталоге и в его подкаталогах
  • 2 Solutions collect form web for “Использование grep для печати всех соответствующих строк, не разделенных пробелом”

    Ты ищешь

     grep -ho '\S*domain.com\S*' file 

    где \S соответствует не-пробельным символам, поэтому в этом случае grep будет соответствовать всем между пробелами со строкой «domain.com» в нем.

    Альтернативно, если вы хотите явно разрешить только @ и . в строке (кроме буквенно-цифровых символов):

     grep -ho '[[:alnum:].@]*domain.com[[:alnum:].]' file 

    Таким образом grep будет извлекать user@domain.com из строки [user@domain.com] .

    POSIXly:

     <file tr -cs '[[:alnum:].@-_]' '[\n*]' | grep domain\.com bcd@domain.com cde@adomain.com efg@efg.domain.com 
    Interesting Posts

    Символические ссылки с ls, mv: принуждение функций к использованию «логических» адресов (запоминание исходного пути)

    Как открыть локальный URL (веб-страницу) в командной строке

    Linux Двойная загрузка / загрузка, / home и / dev разделение разделов

    Неизвестные записи в файле журнала cali Linux wtmp

    Скопировать файл в буфер обмена как text / html

    Где хранится файл конфигурации ibus?

    Как найти следующий доступный суффикс файла (file_a.txt file_b.txt и т. Д.)

    Драйвер сканирования не загружается драйверами Nvidia на Arch Linux

    Постоянная консоль на рабочем столе как «виджет»

    преобразование времени unix в строку времени с помощью команды date

    как получить размер косвенного массива в bash?

    Вырезать любую произвольную программу с помощью динамического компоновщика?

    Подтверждение того, что был создан обратный туннель ssh

    Выполнить программу ncurses после загрузки

    Как заставить логический том LVM2 RAID5 охватывать дополнительный физический том?

    Linux и Unix - лучшая ОС в мире.