Quantcast
Channel: Библиотека знаний
Viewing all articles
Browse latest Browse all 1318

Поиск текста по фрагменту из текста. (grep/egrep)

$
0
0

Поиск текста по фрагменту из текста. (grep/egrep)

Примеры

grep --color=always -C 2 -R "My search text" ./
grep -B 3 -A 5 -i "My search text"

Описание

Легендарная команда grep может служить практически для любых целей. Я ее люблю применять не только для поиска нужных файлов в каталоге исходного текста. С помощью grep также можно задавать поиск по регулярным выражениям. Прототип команды: grep 'шаблон поиска' файл_в_котором_искать Пример:

grep -R 'text' /

-команда будет рекурсивно искать во всех текстовых файлах системы слово text. Grep имеет внушительное количество опций которые могут довольно часто понадобиться:

$ grep --help

Использование: grep [КЛЮЧ]... ШАБЛОН [ФАЙЛ]... Поиск ШАБЛОНА в каждом ФАЙЛЕ или в стандартном вводе. По умолчанию, ШАБЛОН представляет собой простое регулярное выражение (BRE). Пример: grep -i 'hello world' menu.h main.c

Выбор типа регулярного выражения и его интерпретация:

  • -E, --extended-regexp ШАБЛОН - расширенное регулярное выражение (ERE)
  • -F, --fixed-regexp ШАБЛОН - строки фиксированной длины, разделённые символом новой строки
  • -G, --basic-regexp ШАБЛОН - простое регулярное выражение (BRE)
  • -P, --perl-regexp ШАБЛОН - регулярное выражения языка Perl
  • -e, --regexp=ШАБЛОН использовать ШАБЛОН для поиска
  • -f, --file=ФАЙЛ брать ШАБЛОН из ФАЙЛа
  • -i, --ignore-case игнорировать различие регистра
  • -w, --word-regexp ШАБЛОН должен подходить ко всем словам
  • -x, --line-regexp ШАБЛОН должен подходить ко всей строке
  • -z, --null-data строки разделяются байтом с нулевым значением, а не символом конца строки

Дополнительно:

  • -s, --no-messages подавлять сообщения об ошибках
  • -v, --revert-match выбирать не подходящие строки
  • -V, --version вывести информацию о версии и выйти
  • --help показать помощь и выйти
  • --mmap использовать отображение в память (mmap) по возможности

Управление выводом:

  • -m, --max-count=ЧИСЛО остановиться после указанного ЧИСЛА совпадений
  • -b, --byte-offset печатать вместе с выходными строками смещение в

байтах

  • -n, --line-number печатать номер строки вместе с выходными строками
  • --line-buffered сбрасывать буфер после каждой строки
  • -H, --with-filename печатать имя файла для каждого совпадения
  • -h, --no-filename не начинать вывод с имени файла
  • --label=МЕТКА выводить МЕТКУ в качестве имени файла для

стандартного ввода

  • -o, --only-matching показывать только часть строки, совпадающей с ШАБЛОНОМ
  • -q, --quiet, --silent подавить весь обычный вывод
  • --binary-files=ТИП считать, что двоичный файл ТИПА:

binary, text или without-match.

  • -a, --text то же что и --binary-files=text
  • -I то же, что и --binary-files=without-match
  • -d, --directories=ДЕЙСТВ как обрабатывать каталоги

ДЕЙСТВИЕ может быть read (читать), recurse (рекурсивно), или skip (пропускать).

  • -D, --devices=ДЕЙСТВ как обрабатывать устройства, FIFO и сокеты

ДЕЙСТВИЕ может быть 'read' или 'skip'

  • -R, -r, --recursive то же, что и --directories=recurse
  • --include=Ф_ШАБЛОН обработать только файлы, подпадающие под Ф_ШАБЛОН
  • --exclude=Ф_ШАБЛОН пропустить файлы и каталоги,

подпадающие под Ф_ШАБЛОН

  • --exclude-from=ФАЙЛ пропустить файлы, подпадающие под шаблон

файлов из ФАЙЛА

  • --exclude-dir=ШАБЛОН каталоги, подпадающие под ШАБЛОН,

будут пропущены

  • -L, --files-without-match печатать только имена ФАЙЛОВ без совпадений
  • -l, --files-with-matches печатать только имена ФАЙЛОВ с совпадениями
  • -c, --count печатать только количество совпадающих

строк на ФАЙЛ

  • -T, --initial-tab выравнивать табуляцией (если нужно)
  • -Z, --null печатать байт 0 после имени ФАЙЛА

Управление контекстом:

  • -B, --before-context=ЧИС печатать ЧИСЛО строк предшествующего контекста
  • -A, --after-context=ЧИС печатать ЧИСЛО строк последующего контекста
  • -C, --context[=ЧИС] печатать ЧИСЛО строк контекста,
  • --color[=КОГДА],
  • --colour[=КОГДА] использовать маркеры для различия совпадающих строк; КОГДА может быть always (всегда), never (никогда), или auto (автоматически)
  • --color, --colour использовать маркеры для различия совпадающих строк
  • -U, --binary не удалять символы CR в конце строки (MSDOS)
  • -u, --unix-byte-offsets выдавать смещение, как-будто нет CR-ов (MSDOS)

Вместо egrep предполагается запуск grep -E. Вместо fgrep предполагается grep -F. Запуск под именами egrep или fgrep лучше не выполнять. Когда не задан ФАЙЛ, или когда ФАЙЛ это -, то читается стандартный ввод. Если указано меньше, чем два файла, то предполагает -h. При нахождении совпадений кодом завершения программы будет 0, и 1, если нет.При возникновении ошибок, или если не указан параметр -q, кодом завершения будет 2.


Viewing all articles
Browse latest Browse all 1318

Trending Articles


Vimeo 10.7.1 by Vimeo.com, Inc.


UPDATE SC IDOL: TWO BECOME ONE


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


EASY COME, EASY GO


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Smile Quotes


Letting Go Quotes


Love Song lyrics that marks your Heart


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


Long Distance Relationship Tagalog Love Quotes