grep

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, szukaj

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.

Nazwa "grep" jest angielskim akronimem od słów global regular expression print, czyli drukowanie globalnych wyrażeń regularnych.

Liczne użyteczne formy grep kontrolowane są przez GREP_OPTIONS i są to : [egrep], [fgrep], [rgrep], [pgrep], zgrep, bzgrep, bzfgrep, bzegrep ...

Spis treści

[edytuj] Składnia

Grep jest dość rozbudowanym programem, lecz zwykle używa się tylko kilku jego podstawowych opcji.

[edytuj] Uproszczona składnia

grep [-v] wzorzec [Plik(i)]
  • -v oznacza negację wzorca (czyli wzorzec nie może wystąpić)
  • wzorzec – to łańcuch znaków do wyszukiwania, może zawierać wyrażenie regularne
  • Plik(i) – lista plików do przeszukania

[edytuj] Kontrola wyjścia i przeszukiwania

  • -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;

[edytuj] Kontrola wejścia

  • -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 duże litery, 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;


[edytuj] Przykłady

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 z komendą '>print.txt' otrzymuję dokument tekstowy z wynikiem. (http://webdarek.tumblr.com/)

[edytuj] Zobacz też

polecenia systemu operacyjnego Unix

[edytuj] Linki zewnętrzne

Osobiste
Przestrzenie nazw

Warianty
Działania
Nawigacja
Dla czytelników
Dla wikipedystów
Narzędzia
Drukuj lub eksportuj
W innych językach