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
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!
Czy kiedykolwiek zastanawiałeś się, co oznacza Grep? Oto prawdziwa historia powstania Grepa.
Czytaj dalej
- Linux
- Polecenia Linuksa
- Powłoka Bash dla Linuksa
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.
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ć