Terminal Linux jest pełen przydatnych poleceń, ale niewiele z nich jest tak potężnych, jak pozornie proste grep. To znaczy Globalny druk wyrażeń regularnych, drukując wyniki wyszukiwania przez system zdefiniowanych przez użytkownika zbiorów znaków.

grep jest niezwykle potężny, ale może być dość onieśmielający w użyciu, więc dzisiaj nauczysz się podstaw. Jeśli szukasz informacji w dokumentach na swoim komputerze, zwykle będziesz szukał kilku słów naraz.

Ten artykuł skupia się na tym, jak przeszukiwać wiele ciągów znaków za pomocą grep i pokaże kilka podobnych wskazówek i trików dotyczących ogólnego używania grep.

Wyszukiwanie wielu ciągów w grep

Zanim zaczniesz, musisz się upewnić, że znasz kilka podstaw Linuksa. Po pierwsze, musisz być w stanie wywołać terminal — w większości systemów robisz to za pomocą kombinacji klawiszy Ctrl + Alt + Tlub poprzez menu aplikacji.

Musisz także wiedzieć, jak odwoływać się do plików według ścieżki za pomocą terminala. Na przykład, jeśli chcesz wprowadzić ścieżkę do dokumentu tekstowego znajdującego się w folderze o nazwie

instagram viewer
Praca w środku Dom folder, odwołujesz się do niego przy użyciu tego formatu:

~/praca/dokument tekstowy.txt

Ta składnia, używając ~ oraz /, po którym następuje lokalizacja pliku w folderze domowym, służy do pokazywania poleceniu grep plików do przeszukania.

Załóżmy na przykład, że chcesz znaleźć każde wystąpienie słów pszczoła oraz Vanessa w dokumencie tekstowym zawierającym scenariusz z filmu Bee z 2007 roku. Składnia wygląda tak:

grep -E 'pszczoła| Vanessa' ~/work/beescript.txt

Po uruchomieniu tego polecenia otrzymasz listę wszystkich wierszy w dokumencie zawierających słowo pszczoła lub słowo Vanessa.

Złammy trochę to polecenie:

grep -E

Pierwsza część uruchamia polecenie grep z -MI opcja. To kieruje grep do wyszukiwania za pomocą an mirozszerzone wyrażenie regularne. Różne typy wyrażeń regularnych to temat na inny dzień — a opanowanie wyrażeń regularnych zajmuje trochę czasu żywotność — ale na potrzeby tego samouczka polecenie pogrubione-E pozwala przeszukiwać wiele ciągów za pomocą gr.

grep -E 'pszczoła| Vanessa

Następna część zawiera ciągi, które chcesz wyszukać. Muszą być zawarte w pojedynczych cudzysłowach, z pionową kreską między każdym słowem.

grep -E 'pszczoła| Vanessa' ~/work/beescript.txt

Ostatnia część wywołania grep prowadzi ścieżkę do pliku, który chcesz przeszukać; w tym przypadku scenariusz do filmu Bee z 2007 roku.

grep Wskazówki i porady

To świetny początek, ale są wiele praktycznych sposobów korzystania z grep. Teraz, gdy wiesz, jak znaleźć wiele ciągów, oto kilka poleceń, które mogą przenieść tę moc na wyższy poziom:

grep -E 'pszczoła| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt

Jest to bardzo podobne do poprzedniego polecenia, z wyjątkiem tego, że zwraca wszystkie wiersze zawierające bee i Vanessa zarówno ze skryptu filmowego Bee, jak iz mojego własnego pliku tekstowego historii Bee.

Jednak wszystkie te wzmianki o pszczołach stają się coraz trudniejsze do odczytania.

grep -E 'pszczoła| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt | mniej

To wymaga tego samego polecenia grep i przesyła je do mniej. Spowoduje to otwarcie wyników w łatwym w obsłudze formacie, umożliwiającym przewijanie w górę i w dół za pomocą J oraz k klucze i przeszukuj wyniki za pomocą / klucz.

grep -E 'pszczoła| Vanessa' ~/work/beescript.txt ~/fun/mybeestory.txt > beeresults.txt

Podobnie jak polecenie less, wyżej wymienione polecenie pobiera wyniki grep i zapisuje je wszystkie w osobnym pliku. Następnie możesz otworzyć ten plik w swoim ulubionym edytorze tekstu w celu dalszej edycji.

Związane z: Ściągawka dotycząca poleceń Linuksa

Praca z grepem w Linuksie

Mamy nadzieję, że zaczynasz rozumieć, jak potężny może być grep – i to nawet nie jest zarysowanie powierzchni. Idź dalej i grep!

Jak Grep ma swoją nazwę? Historia stworzenia Grepa

Czy kiedykolwiek zastanawiałeś się, co oznacza Grep? Oto prawdziwa historia powstania Grepa.

Czytaj dalej

UdziałĆwierkaćE-mail
Powiązane tematy
  • Linux
  • Polecenia Linuksa
  • Powłoka Bash dla Linuksa
O autorze
Ian Buckley (219 opublikowanych artykułów)

Ian Buckley jest niezależnym dziennikarzem, muzykiem, performerem i producentem wideo mieszkającym w Berlinie w Niemczech. Kiedy nie pisze ani nie występuje na scenie, majstruje przy elektronice DIY lub kodowaniu w nadziei, że zostanie szalonym naukowcem.

Więcej od Iana Buckleya

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować