Как я могу grep две вещи, где есть опция -w?

У меня есть json- файл, откуда я хочу получить значение двух элементов, которые находятся в массиве с помощью grep . Предположим, я пытаюсь получить данные из значений foo и bar , проблема в том, что bar также соответствует megabar поэтому мне нужно grep его с параметром -w .
Проблема возникает, когда вы пытаетесь найти их в одно и то же время, поскольку я должен grep для одного значения ИЛИ другого.
Из этого вопроса мне удалось немного приблизиться к тому, что я искал, но мой результат был примерно таким:

 grep -E '(foo|-w bar)' file "foo": "59766", "foo": "59770", "foo": "59774", "foo": "59778", "foo": "59782", "foo": "59786", 

Любая идея о том, как это сделать?

  • Ядро Linux: большие подкачки
  • Inotifywait для большого количества файлов в каталоге
  • перемещать IP-адрес с одного интерфейса на другой без перерыва
  • Создание жестких ссылок - Разрешения?
  • Сетевая проблема класса Arch Linux
  • Запуск сценария оболочки при неудачных попытках входа в систему X
  • Убийца, который меня озадачивает
  • Lenovo Ideapad работает с монетным двором
  • 2 Solutions collect form web for “Как я могу grep две вещи, где есть опция -w?”

    Граница слова имеет аналогичный эффект -w , но может использоваться как часть выражения.

    «\ Ь»
    Сопоставьте пустую строку с краем слова.
    […]
    '\ <'
    Сопоставьте пустую строку в начале слова.
    '\>'
    Сопоставьте пустую строку в конце слова.

    Чтобы соответствовать bar только тогда, когда это целое слово, но где угодно (в том числе внутри более длинных слов):

     grep -E 'foo|\<bar\>' 

    Учитывая, что foo будет использоваться в том же контексте, что и foo, а также соответствует полному слову, самый простой способ – сделать:

     grep -E -w '(foo|bar)' file 
    Interesting Posts

    Как бороться с заранее упакованной программой, не придерживающейся правила молчания?

    Ошибка демона Cron: разрешение отклонено

    Мой синтаксический анализатор работает в командной строке, но не из сценария

    Преобразование изображения раздела в образ диска с таблицей разделов

    Как узнать общую память, выделенную для определенного процесса в Ubuntu?

    Увеличьте размер файловой системы внутри изображения qcow2

    Все каталоги ошибочно идентифицированы как git repos в zsh

    Проверка воспроизведения звукового файла

    Как установить visudo для использования другого редактора, чем значение по умолчанию для Fedora?

    Как предоставить чтение, запись разрешений с использованием IP-адресов в SAMBA

    Как я должен обрабатывать shebang при написании моей собственной оболочки?

    Как выполнить команду bash во всех возможных подкаталогах?

    флаги ext4, чтобы указать режим «экстентов»?

    Вложенный кошмар котировок: отправка электронной почты с удаленного хоста

    Глобус не работает в zsh, но работает в bash

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