Scroll to navigation

RGREP(1) Podręczniki użytkownika RGREP(1)

NAZWA

rgrep - rekurencyjny, podświetlający program grep

SKŁADNIA

rgrep [opcje] wzorzec [plik]...

OPIS

rgrep, w przeciwieństwie do grep(1) i egrep(1), potrafi rekurencyjnie zagłębiać się w podkatalogi. Tradycyjna metoda wykonywania tego rodzaju wyszukiwania w systemach uniksowych wykorzystuje polecenie find(1) w połączeniu z grep(1). Skutkuje to jednak bardzo kiepską wydajnością.

PARAMETRY WIERSZA POLECEŃ

-?

Dodatkowa pomoc (na niektórych systemach należy użyć '-?', by uniknąć interpretacji pytajnika przez powłokę).
-c
Zlicza dopasowania.
-h
Podświetla dopasowania (przyjmuje się terminal zgodny z ANSI).
-H
Wypisuje dopasowanie, a nie całą linijkę je zawierającą.
-i
Ignoruje wielkości liter.
-l
Podaje tylko nazwy plików.
-n
Wypisuje numer linii, w której występuje dopasowanie.
-F
Podąża za dowiązaniami.
-r
Rekurencyjnie przegląda drzewo katalogów.
-N
Wyszukuje BEZ rekurencji.
-R wzorzec
Jak -r, z wyjątkiem tego, że sprawdzane są tylko pliki pasujące do wzorca.
-v
Wypisuje tylko te linie, które NIE pasują do zadanego wzorca.
-x ext
Sprawdza tylko pliki o rozszerzeniu ext.
-D
Wypisuje wszystkie katalogi, jakie będą przeszukiwane. Ta opcja służy tylko do celów diagnostycznych. Jeśli jest użyta, to nie są przeglądane żadne pliki.
-W dług
Linie mają długość dług znaków (nie są zakończone znakiem nowej linii).

ROZPOZNAWANE WYRAŻENIA REGULARNE:

.

dopasowuje dowolny znak oprócz znaku nowej linii
\d
dopasowuje dowolną cyfrę
\e
dopasowuje znak ESC
*
dopasowuje zero lub więcej wystąpień poprzedzającego wyrażenia regularnego
+
dopasowuje co najmniej jedno wystąpienie poprzedzającego wyrażenia regularnego
?
dopasowuje zero wystąpień lub jedno wystąpienie poprzedzającego wyrażenia regularnego
^
dopasowuje początek linii
$
dopasowuje koniec linii
[...]
dopasowuje dowolny pojedynczy znak spośród umieszczonych w nawiasach. Na przykład, [-02468] dopasowuje '-' lub dowolną cyfrę parzystą, a [-0-9a-z] dopasowuje '-', dowolną cyfrę od 0 do 9 lub literę od a do z.

\{...\}

\(...\)

\1, \2, ..., \9

dopasowuje podłańcuch poprzednio dopasowany n-tym ujętym w nawiasy podwyrażeniem \(...\) wyrażenia regularnego.
Na przykład, \([[a-zA-Z]+\)\1[\t] dopasowuje każde słowo kolejno powtórzone.

PRZYKŁADY

Szukanie we wszystkich plikach z rozszerzeniem 'c' w bieżącym katalogu i jego podkatalogach dopasowań napisu 'int ' na początku linii, z wypisywaniem pasujących linii wraz z ich numerami (dwie metody):

rgrep -n -R '*.c' '^int ' .
rgrep -n -x c '^int ' .

Podświetlanie wszystkich wystąpień powtórzonych słów w pliku 'strona.tex':
rgrep -h '[ \t]\([a-zA-Z]+\)[\\t]+\1[\t ' strona.tex
rgrep -h '^\([a-zA-Z]+\)[\\t]+\1[+\t ' strona.tex

Zauważ, że ta wersja programu rgrep wymaga w tym przypadku dwu przebiegów.

Przeglądanie, w katalogu /usr/src/linux i niżej, wszystkich plików OPRÓCZ mających rozszerzenie '.o' lub '.a' w poszukiwaniu łańcucha 'mouse', bez uwzględniania wielkości liter:

rgrep -i -R '*.[^ao]' mouse /usr/src/linux

Przeszukiwanie w pliku 'plik.fits', o stałej długości rekordów, słowa kluczowego EXTNAME:

rgrep -W80 ^EXTNAME plik.fits

Zauważ, że wyrażenie regularne '^[A-Z]+' wypisze wszystkie nagłówki formatu FITS.
[tłum.: FITS, Flexible Image Transport System - opracowany przez NASA format do międzyplatformowej wymiany danych astronomicznych, głównie grafiki, ale również tablic czy macierzy.]

AUTOR

"John E. Davis" <davis@space.mit.edu>

Tę stronę podręcznika systemowego przełożył na troff

"Boris D. Beletsky" <borik@isracom.co.il>

październik 1996 Debian