Как объединить эти два grep-регулярных выражения

У меня есть два регулярных выражения grep

grep -e '[Yy].*[Yy].[Ee][Ee]' first.txt 

а также

 grep -e '[Ee][Ee].*[Yy].*[Yy]' first.txt 

Как объединить эти два в одно регулярное выражение?

  • sed / awk / grep найти строку между точкой с запятой
  • Как сделать grep, даже если файл отсутствует?
  • Grep для нескольких строк, покажите количество строк после одной из строк (но не другой)
  • Как разбить файл на основе списка шаблонов и назвать выходные файлы по шаблону?
  • Как найти файлы со 100% символами NUL в их содержимом?
  • grep --exclude-dir поведение: ошибка или функция?
  • Использование grep и поиск уникальных вхождений
  • Стирание двухстрочного шаблона с sed / grep / whatever
  • 2 Solutions collect form web for “Как объединить эти два grep-регулярных выражения”

    Посредством конкатенации шаблонов?

     grep -e '[Yy].*[Yy].[Ee][Ee][Ee][Ee].*[Yy].*[Yy]' first.txt 

    Или вы имели в виду, по сути дела, логическое И двух шаблонов?

    Если последнее, вам нужно подделать его, так как в то время как grep имеет встроенные OR ( | ) и NOT ( -v ; [^] ), он не имеет встроенного И. Один из способов заключается в том, чтобы вывести выход одного grep в другой:

     grep -e '[Yy].*[Yy].[Ee][Ee]' first.txt | grep '[Ee][Ee].*[Yy].*[Yy]' 

    Другой способ – искать оба шаблона последовательно, в любом порядке, с логическим ИЛИ (сокращенно для краткости):

     grep -Ee 'pattern1.*pattern2|pattern2.*pattern1' input.txt 

    Я считаю, что первое было более кратким и более легким в обслуживании.

    Вы можете использовать grep для обоих шаблонов сразу, используя \| между каждой моделью.

     grep -e '[Yy].*[Yy].[Ee][Ee]'\|'[Ee][Ee].*[Yy].*[Yy]' 
    Interesting Posts

    rsync только файлы новее, чем заданная дата, с –delete

    Ожидайте, чтобы скрипт автоматически регистрировался, командовал и показывал свой вывод

    Пользовательские привилегии Mysql: Только таблица CREATE

    grep трубопроводы в sed, заменяя inline; но я хочу, чтобы sed печатал имя файла и менял строку. Является ли это возможным?

    Как отменить `set -x`?

    Как запустить java-службу как пользователя без полномочий root на CentOs 6

    выход ограничения на выход И избежать сигнала 13

    CentOS 6.4: невозможно монтировать диск, не нравится UDF

    Что устанавливает дочерний STDERR, STDOUT и STDIN?

    Будет ли rsync восстанавливать исходные метаданные файлов?

    Является ли `-P` таким же, как` -ap` для встроенного `type`?

    Как я могу загрузиться в chroot, не покидая текущей сессии ОС?

    Возможно ли использовать беспроводной принтер с поддержкой CUPS?

    объединить файлы csv по первому столбцу

    Как найти адрес в большом файле с grep?

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