найти только первое появление, используя только grep

Предположим, у меня есть файл со многими словами, я хочу найти только первое слово с шаблоном «xyz». Как это сделать, если в этой строке есть несколько слов с этим шаблоном? -m возвращает все слова в первой строке, в которой он совпадает. Мне нужна только команда grep.

  • Условие скрипта Bash всегда передается, даже когда grep не должен возвращать ничего
  • Фильтрация вывода журнала на отдельных линиях
  • Как grep несколько файлов, используя часть имени файла как шаблон?
  • grep для буквенно-цифровых строк любой длины с двоеточием с каждой стороны
  • Как отображать числа только в конце переменной в bash?
  • Как я могу использовать sed, чтобы отрезать строку от строки?
  • Escape [в grep
  • Когда использовать grep, less, awk, sed
  • 2 Solutions collect form web for “найти только первое появление, используя только grep”

    По умолчанию grep печатает строки, соответствующие шаблону, поэтому, если шаблон появляется один или несколько раз в строке, grep будет печатать эту целую строку.

    Добавление флага -m 7 покажет grep для печати только первых 7 строк, где отображается шаблон.

    Так что это должно делать то, что вы хотите (я его не тестировал):

     grep -o -m 1 xyz myfile | head -1 

    Edit: как указано в @ Kusalananda, вам не нужен флаг -m но с его помощью grep не нужно разбирать весь файл и будет выводить результат быстрее, особенно если myfile – это большой файл.

    Ответ на ваш вопрос находится на странице grep man:

    $ grep -m1 'searchstring' имя_файла

    Параметр -m является ключом.-M1 отображает только первое совпадение, -m 2 первые 2 вхождения и так далее.

    Я надеюсь, это поможет вам.

    Interesting Posts

    Задание локального libc вызывает глобальный libc?

    В чем разница между вероятными и маловероятными вызовами в ядре?

    Выполнение HTTP-процесса как единственного дочернего элемента в пространстве имен PID / NET

    Преобразование IP-адреса в координаты с использованием базы данных

    Текст эха, предложенный подсказкой в ​​bash

    Есть ли доступ к журналу OS / user?

    Установка отсутствующей прошивки в debian

    Изменение конца строки всякий раз, когда она содержит определенную строку

    Обеспечьте функциональность циклического устройства для обычного файла под уникальным именем

    Создайте массив в сценарии bash из установленных внешних USB-накопителей на macOS

    Как установить часы в Debian 8

    Debian: возможно ли / безопасно устанавливать пакеты из старой версии репозитория?

    awk – столбцы с фиксированной шириной

    Моя виртуальная машина VirtualBox не обнаруживает подключенный к USB-диск диск

    Может ли SSH аутентификация открытого ключа использовать pam_group?

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