Linux Wiki
(→‎Linki zewnętrzne: Rekategoryzacja)
m (szablon)
Linia 1: Linia 1:
 
{{małą literą}}
 
{{małą literą}}
'''grep''' – z danego tekstu pokazuje jedynie linie, które pasują do wzorca
+
{{T}} z danego tekstu pokazuje jedynie linie, które pasują do wzorca
   
 
== Użycie ==
 
== Użycie ==

Wersja z 19:38, 30 wrz 2013

grep –  z danego tekstu pokazuje jedynie linie, które pasują do wzorca

Użycie

grep [opcje] wzorzec [plik]
  • opcje – opcjonalne przełączniki
  • wzorzec – co grep ma dopasowywać
  • plik – plik, w którym grep będzie szukać wzorca. Jeżeli go nie będzie, zostanie użyty stdin

Najczęściej używane przełączniki

  • -A x – pokazuje x linii po znalezionym wzorcu
  • -B x – pokazuje x linii przed znalezionym wzorcem
  • -x – zaznacza tylko te dopasowania, które pasują do całej linii
  • -i – "znieczula" grep'a na wielkość liter. W tym przypadku wyrazy Linux i LInuX będą traktowane jak identyczne.
  • -E – używa rozszerzonych wyrażeń regularnych

Przykłady

Przykład 1 – z użyciem pipe

Wywołanie ls | grep txt w przykładowym folderze wypisze:

do zrobienia.txt
linuxwiki.txt
moje notatki.txt
  • Przy użyciu pipe program ls przekazał grep'owi listę plików używając stdin
  • Grep otrzymał listę i pokazał tylko linie, które zawierały wzorzec (txt)

Przykład 2 – z plikiem

Wywołanie grep "Panno Święta" "pan tadeusz.txt" w przykładowym folderze wypisze:

Panno Święta, co jasnej bronisz Częstochowy
  • Plik pan tadeusz.txt zawiera tekst I Księgi Pana Tadeusza.
  • Grep szuka w niej tekstu Panno Święta

Przykład 3 – z "kontekstem"

A co, gdy nie wiemy, skąd pochodzi fragment, jak np. z przykładu wyżej? Przydadzą nam się opcje -A oraz -B. Chcemy zobaczyć 4 linie przed i 3 linie po tej z wzorcem. Zakładamy, że do zorientowania się wystarczy. Tak więc wywołanie komendy grep -B 4 -A 3 "Panno Święta" "pan tadeusz.txt" w przykładowym folderze wypisze na ekran:

Ile cię trzeba cenić, ten tylko się dowie,
Kto cię stracił. Dziś piękność twą w całej ozdobie
Widzę i opisuję, bo tęsknię po tobie.
Panno Święta, co jasnej bronisz Częstochowy
I w Ostrej świecisz Bramie! 2 Ty, co gród zamkowy
Nowogródzki ochraniasz z jego wiernym ludem!
Jak mnie dziecko do zdrowia powróciłaś cudem
  • W celu łatwiejszego zorientowania się linia z wzorcem została oznaczona przez pogrubienie.
  • W normalnych warunkach grep tego nie robi.

Ciekawostki

  • Istnieją takie polecenia jak egrep i fgrep. Egrep to to samo co grep wywołany z parametrem -E, a fgrep – z parametrem -f

Linki zewnętrzne


{{#seo:|keywords = Grep,polecenie Grep,Linux,polecenia,komendy,Linux polecenie Grep}}