grep
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
- – podręcznik dyskowy w systemie Linux
- grep(1) – jw., wersja polskojęzyczna
- podręcznik info wersja polskojęzyczna
|
||||||||||||||||||||||||||