Узнайте, на какой строке в текстовом файле соответствует слово

Есть ли способ узнать, на какой строке текстового документа есть какое-то слово, которое соответствует шаблону, например, с grep или что-то еще. Благодарю.

2 Solutions collect form web for “Узнайте, на какой строке в текстовом файле соответствует слово”

Да, это возможно с опцией -n grep .

От man grep :

 -n, --line-number Prefix each line of output with the 1-based line number within its input file. 

Например, если у вас есть файл с именем file.txt имеющий:

 this is foo test and this is bar test 

Теперь вывод grep -n "test" file.txt :

 $ grep -n "test" file.txt 2:foo test 4:bar test 

Здесь 2 и 4 указывают номера строк, в которых найден шаблон.

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

  1. Perl

     perl -lne 'print $. if /pat/' file 
  2. AWK

     awk '/pat/{print NR}' 
  3. СЕПГ

     sed -n '/pat/=' file 
  • Разбор строк файла данных с помощью разделителя Вместо EOL
  • Как преобразовать данные с разделителями табуляции в данные с разделителями-запятыми?
  • Использование 'sed' для поиска и замены
  • Назначения значений двойной кавычки, хранящиеся в CSV?
  • Как анализировать файл данных для извлечения определенных данных и формата для другого использования?
  • Ввод файла для оператора select в командной строке
  • Регулярные команды и команды с командой sed
  • Почему эта команда xargs не работает?
  • попытка добавить текст до и после некоторого текста
  • Катить все файлы в папке, включая имя файла, используя цикл for?
  • bash - Разделить значения «таблицы» в строки в массиве
  • Создание файлов из шаблонов, замещение в середине других слов
  • Interesting Posts

    Совместное использование контента / приложений между консолью и консолью VNC

    Отключение расширения сервера Xorg во время выполнения (для новых клиентов)?

    Как просмотреть мой текущий пользователь / пароль в bash?

    systemd Ошибка при выполнении сценария нереста EXEC: разрешение отклонено

    du: объединить обе метки времени

    Как узнать, сколько ядер (в том числе эмулированных через HT и т. Д.) Доступны для пользователя?

    Dockerfile, изображение докеров и воспроизводимая среда

    Перемещение логического тома на новый физический диск

    Mutt – отправленные и черновики в INBOX

    Как совместить число в одном файле с именем в другом файле?

    Пересылка X11 через SSH

    Как создать внешнюю, файловую систему, точку входа только для чтения для внутренней памяти процесса?

    Сортировка списка и отдельных элементов с запятыми вместо строк новой строки

    Что означает «магические тесты» для команды файла?

    Как автоматически обновлять рабочий стол KDE?

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