10 praktycznych przykładów polecenia Linuksa Grep

10 praktycznych przykładów polecenia Linuksa Grep

Polecenie grep zapewnia dostęp do narzędzia grep, potężnego narzędzia do przetwarzania plików używanego do wyszukiwania wzorców w plikach tekstowych. Ma wiele praktycznych zastosowań i jest z pewnością jednym z najczęściej używanych poleceń Linuksa. Ten przewodnik ilustruje kilka prostych, ale użytecznych poleceń grep Linuksa, które mają zastosowanie w świecie rzeczywistym.





Przykładowy plik do demonstracji

Stworzyliśmy plik referencyjny, aby pomóc czytelnikom skuteczniej zrozumieć grep. Możesz utworzyć kopię tego pliku, wydając w terminalu następujące polecenie powłoki.





podłączony, ale brak okien internetowych 10
cat <> test-file
This is a simple text file that contains
multiple strings as well as some telephone numbers
(555) 555-1234 (567) 666-2345
and email plus web addresses
john@doe.com
https://google.com
ftp://mywebserver.com
END

1. Znajdź tekst w plikach

Aby wyszukać wzorzec tekstowy w pliku, po prostu uruchom grep, a następnie nazwę wzorca. Określ również nazwę pliku zawierającego tekst.





grep 'email' test-file

To polecenie wyświetli linię w naszym plik-testowy który zawiera słowo e-mail . Możesz także wyszukiwać ten sam tekst w wielu plikach za pomocą grep.

grep 'example' /usr/share/dict/american-english /usr/share/dict/british-english

Powyższe polecenie wyświetla wszystkie wystąpienia słowa przykład w amerykański angielski oraz Brytyjski Angielski pliki słownika.



2. Znajdź dokładne pasujące słowa

Polecenie grep systemu Linux przedstawione we wcześniejszym przykładzie wyświetla również wiersze z częściowymi dopasowaniami. Użyj poniższego polecenia, jeśli potrzebujesz tylko dokładnych wystąpień słowa.

grep -w 'string' test-file

ten -w lub --słowo-wyrażenie regularne opcja grep ogranicza dane wyjściowe tylko do dokładnych dopasowań. Grep składa się z kilku dodatkowych flag, których można również użyć z domyślnym poleceniem.





Powiązane: Jak Grep ma swoją nazwę? Historia stworzenia Grepa

3. Ignoruj ​​rozróżnienia przypadków

Domyślnie grep wyszukuje wzorce z rozróżnianiem wielkości liter. Jednak możesz chcieć to wyłączyć, jeśli nie wiesz, w jakim przypadku jest wcześniejszy wzór.





grep -i 'this' test-file

Użyj -i lub --ignoruj-przypadek opcja wyłączenia czułości na wielkość liter.

4. Policz liczbę wzorów

ten -C flaga oznacza liczyć . Wyświetla liczbę dopasowań, które zostały znalezione dla określonego wzorca. Administratorzy mogą używać tego do pobierania określonych informacji o systemie.

Możesz fajkować polecenie ps z grep do zliczania procesów należących do bieżącego użytkownika.

ps -ef | grep -c $USER

Następujące polecenie wyświetla liczbę MP3 pliki obecne w katalogu.

ls ~/Music | grep -c .mp3

5. Wyświetl numery linii zawierające dopasowania

Możesz chcieć znaleźć numery linii, które zawierają określone dopasowanie. Użyj -n lub --numer linii opcja grep, aby to osiągnąć.

cat /etc/passwd | grep -n rubaiat

Ta opcja jest szczególnie przydatna do debugowania kodów źródłowych i rozwiązywania problemów z plikami dziennika. Aby wyświetlić wszystkie liczby dla linii w ~/.vimrc które są używane do konfiguracji edytora tekstu Vima:

grep -n 'set' ~/.vimrc

6. Znajdź nazwy plików za pomocą rozszerzeń

Aby uzyskać listę wszystkich MP3 pliki obecne w ~/Muzyka informator:

ls ~/Music/ | grep '.mp3'

Możesz wymienić .mp3 z dowolnymi innymi rozszerzeniami do lokalizowania określonych plików. Poniższe polecenie zawiera listę wszystkich php pliki obecne w bieżącym katalogu roboczym.

jaką mam wersję Ubuntu?
ls | grep '.php'

7. Znajdź wzorce w skompresowanych plikach

Linuksowe polecenie grep może również znaleźć wzorce w skompresowanych plikach. Będziesz musiał użyć zgrep do tego jednak polecenie. Najpierw utwórz skompresowane archiwum naszych plik-testowy wpisując:

gzip test-file

Teraz możesz wyszukiwać tekst lub inne wzorce w powstałym archiwum.

zgrep email test-file.gz

8. Znajdź adresy e-mail

Administratorzy mogą również wyświetlać adresy e-mail z plików tekstowych za pomocą polecenia grep systemu Linux. Poniższy przykład robi to, wyszukując wzorzec wyrażenia regularnego.

grep '^[a-zA-Z0-9]+@[a-zA-Z0-9]+.[a-z]{2,}' test-file

Możesz znaleźć wyrażenia regularne do wykonywania podobnych zadań lub możesz je utworzyć samodzielnie, jeśli wiesz, jak działają.

9. Znajdź numery telefonów za pomocą Grep

Możesz użyć wyrażeń regularnych grep do filtrowania numerów telefonów z pliku tekstowego. Pamiętaj, że musisz dostosować wzór, aby pasował do rodzaju potrzebnych numerów telefonów.

grep '(([0-9]{3})|[0-9]{3})[ -]?[0-9]{3}[ -]?[0-9]{4}' test-file

Wspomniane polecenie odfiltrowuje dziesięciocyfrowe amerykańskie numery telefonów.

10. Znajdź adresy URL z plików źródłowych

Możemy wykorzystać moc grep do wyświetlania adresów URL znalezionych w plikach tekstowych. Podane poniżej polecenie wyświetla wszystkie adresy URL obecne w plik-testowy .

grep -E '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file

Znowu używamy -ORAZ opcja dla rozszerzonych wyrażeń regularnych. Możesz także użyć egrep polecenie, aby uniknąć dodawania tego.

egrep '^(http|https|ftp):[/]{2}([a-zA-Z0-9-.]+.[a-zA-Z]{2,4})' test-file

Opanowanie polecenia Linux Grep

Przedstawiliśmy kilka przydatnych przykładów polecenia grep Linuksa do rozwiązywania rzeczywistych problemów. Chociaż te przykłady ilustrują moc grep w przetwarzaniu tekstu, musisz opanować wyrażenia regularne, jeśli chcesz być super produktywny z grep.

Czasami użytkownicy Linuksa wpadają w pewne sytuacje, w których nie pamiętają różnych opcji związanych z poleceniem. Mamy nadzieję, że system operacyjny Linux zapewnia sposoby uzyskania pomocy wiersza poleceń dla prawie każdego narzędzia systemowego.

Udział Udział Ćwierkać E-mail 7 sposobów na uzyskanie pomocy wiersza poleceń w systemie Linux

Wszystkie niezbędne polecenia do nauki o poleceniach systemu Linux z wiersza poleceń

Czytaj dalej
Powiązane tematy
  • Linux
  • Linux
  • Polecenia Linuksa
O autorze Rubajat Hossain(39 opublikowanych artykułów)

Rubaiat jest absolwentem CS z silną pasją do open-source. Oprócz tego, że jest weteranem systemu Unix, zajmuje się także bezpieczeństwem sieci, kryptografią i programowaniem funkcjonalnym. Jest zapalonym kolekcjonerem książek z drugiej ręki i ma nieustanny podziw dla klasycznego rocka.

Więcej od Rubaiata Hossaina

Zapisz się do naszego newslettera

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

jak przeglądać pliki .dat
Kliknij tutaj, aby zasubskrybować