Grep: Różnice pomiędzy wersjami
[wersja przejrzana] | [wersja przejrzana] |
Usunięta treść Dodana treść
literówka w słowie expression |
|||
Linia 2:
'''grep''' – [[program komputerowy|program]] (komenda [[wiersz poleceń|wiersza poleceń]]), który służy do wyszukiwania w tekście i wyodrębniania linii zawierających ciąg znaków pasujący do podanego [[Wyrażenie regularne|wyrażenia regularnego]].
Pierwotnie grep był jednym z podstawowych programów wchodzących w skład systemu [[Unix]], lecz współcześnie jest obecny praktycznie w każdym systemie uniksopodobnym. Został napisany przez [[Ken Thompson|Kena Thompsona]]<ref>{{Cytuj książkę |
Wersja o nazwie [[GNU]] grep została stworzona przez [[Free Software Foundation]] i charakteryzuje się m.in. zastosowaniem rozszerzonych wyrażeń regularnych oraz zgodnością z [[POSIX]]<ref name="posix">[http://www.opengroup.org/onlinepubs/009695399/utilities/grep.html grep] – Commands & Utilities Reference, [[Single UNIX Specification|The Single UNIX Specification]], Issue 7 from [[The Open Group]].</ref>.
== Nazwa ==
Nazwa „grep” jest [[Skrótowiec|akronimem]] od {{ang.|global regular expression print}}<ref name="allacronyms.com">{{Cytuj stronę |
Geneza nazwy grep może pochodzić z czasów stosowania edytora [[Ex (Unix)|ex]]. Komendą do wyszukiwania w całym edytowanym tekście ciągu znaków pasującego do wyrażenia regularnego jest
Linia 14 ⟶ 13:
ponieważ po angielsku wyrażenie regularne to (w skrócie) ''re'' (od ''regular expression'') to otrzymujemy '''''g/re/p'''''<ref name="Quigley" />.
== Użycie<ref name="gnu.org-grep">{{Cytuj stronę |
<code>$ grep ''opcje'' ''wzorzec'' ''plik/pliki''</code>
* '''opcje''' – opcje programu grep kontrolujące wejście, wyjście oraz sposób poszukiwania wzorca
Linia 55 ⟶ 54:
== Warianty ==
W niektórych systemach uniksowych istnieją także pochodne modyfikacje komendy grep o nazwach: '''egrep''', '''fgrep''', '''agrep''' czy '''rgrep'''. W poleceniu ''egrep'' (od {{ang.|extended grep}}) można używać rozszerzonej, w stosunku do „klasycznego” grepa, składni wyrażeń regularnych, a w poleceniu ''fgrep'' (od {{ang.|fast grep}} lub {{j|en|''fixed grep''}}) znaki specjalne używane w wyrażeniach regularnych używane są literalnie, np. znaki ''$'' i ''^'', nie mają specjalnego, symbolicznego znaczenia, lecz odpowiadają same sobie<ref name="Quigley">{{Cytuj książkę |
Współczesne implementacje programu grep np. GNU grep, funkcje osobnych wariantów, mają dostępne w postaci opcji podawanych przy wywołaniu programu (np. -E dla egrep i -F dla fgrep, co jest zapisane w normie POSIX<ref name="posix" />).
== Implementacje ==
Pierwszym programem do składu i łamania publikacji, w którym zastosowano zaawansowane wyszukiwanie tekstu oparte na grepie, jest [[Adobe InDesign]] w wersji CS3 z 2007 r. Znajduje się ono w oknie Znajdź/Zamień, w którym obok zakładki Text umieszczono zakładkę Grep. Silnik grepa w tym programie jest oparty na bibliotekach BOOST używanych w implementacjach języka Perl<ref>Marek Włodarz, ''GREP w InDesign CS3–CS5'', MAWArt, Warszawa 2011, ISBN 978-83-932542-0-0.</ref>.
== Zobacz też ==
* [[wieloznacznik]]
* [[wyrażenie regularne]]
* [[Pomoc:Wyrażenia regularne]]
{{przypisy}}
|