grep

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania

grep – jeden z podstawowych programów wchodzących w skład systemu Unix. Służy do znajdowania w strumieniu wejścia (plik, lub po prostu wpisywany tekst) linii zawierających ciąg znaków pasujących do danego wyrażenia regularnego. Został napisany przez Kena Thompsona[potrzebne źródło].

Nazwa "grep" jest angielskim akronimem od słów global regular expression print[1].

Składnia[edytuj | edytuj kod]

grep opcje wzorzec plik(i)_wejściowy[2]

  • opcje - opcje programu grep kontrolujące wejście, wyjście oraz sposób poszukiwania wzorca
  • wzorzec – łańcuch znaków do wyszukiwania, może zawierać wyrażenie regularne
  • plik(i)_wejściowe – lista plików do przeszukania

Kontrola wyjścia i przeszukiwania[edytuj | edytuj kod]

  • -c – zamiast wyświetlać linie ze znalezionym fragmentem wyświetla liczbę znalezionych linii;
  • -L – nie wyświetla znalezionego fragmentu tylko pokazuje nazwy plików, w których nie było tego ciągu znaków;
  • -l – odwrotnie do poprzedniego polecenia, wyświetla pliki w których znalazło dany ciąg znaków;
  • -n – wyświetlany jest numer linii w pliku w których znaleziono dany ciąg znaków;
  • -w – wyszukuje tylko całe słowa;
  • -x – wyszukuje tylko całe linie;
  • -v - negacja zapytania

Kontrola wejścia[edytuj | edytuj kod]

  • -f plik – dane do wyszukania są brane po jednym wierszu z 'plik';
  • -h – po podaniu kilku plików do przeszukania po znalezieniu danego ciągu znaków przy danej linii nie będzie podany plik, w którym się to znajdowało;
  • -i – ignoruje wielkość liter, tzn. jeżeli podamy do wyszukania słowo 'ala', to pokaże nam 'ALA', 'Ala', 'AlA' itd.;
  • -r – gdy plik podany do przeszukania jest katalogiem, to zostaną przeszukane wszystkie pliki w tym katalogu

Przykłady[edytuj | edytuj kod]

grep 'Ala' plik

Znajduje linie zawierające wyraz 'Ala' w pliku 'plik'.

grep 'A[lg]a' plik

Znajduje linie zawierające wyraz 'Ala' lub 'Aga'.

grep 'A.a' plik 

Znajduje linie zawierające wyrazy takie jak 'Ala', 'Asa',' Aaa' itp.

grep '^Ala' plik

Znajduje linie zawierające wyraz 'Ala' na początku.

grep 'Go+gle' plik

Znajduje linie zawierające wyraz 'Gogle', 'Google', 'Gooooooogle' itp.

grep '[0-9]+' 

Znajduje linie zawierające dowolną liczbę.

kill `pgrep firefox`

Wyłącza przeładowany firefox

grep -i -R -n -H 'the' *

Szuka słowa 'the' w dowolnym dokumencie bez względu na wielkość liter wraz z podaniem nazwy pliku i linii gdzie znajduje się szukane słowo.

grep -i -R -n -H 'the' * >print.txt

Szuka słowa 'the' i przekierowuje wyjście do pliku tekstowego 'print.txt'.

Zobacz też[edytuj | edytuj kod]

Przypisy

  1. grep - Global Regular Expression Print (pol.). allacronyms.com. [dostęp 2013-09-30].
  2. GNU Grep 2.14 (pol.). gnu.org. [dostęp 2013-09-30].

Linki zewnętrzne[edytuj | edytuj kod]