Pokaż linie przed i po meczu przez grep

Pokaż linie przed i po meczu przez grep

GREP był szeroko używany w systemach Linux podczas pracy nad niektórymi plikami, wyszukiwanie określonego wzoru i wiele innych. Tym razem używamy polecenia GREP do wyświetlania linii przed i po dopasowanym słowie kluczowym używanym w określonym pliku. W tym celu będziemy używać flagi „-A”, „-B” i „-C” w naszym przewodniku samouczka. Musisz więc wykonać każdy krok, aby lepiej zrozumieć. Upewnij się, że masz Ubuntu 20.04 Zainstalowany system Linux.

Po pierwsze, musisz otworzyć terminal linii poleceń Linux, aby rozpocząć pracę nad GREP. Obecnie jesteś w katalogu domowym swojego systemu Ubuntu zaraz po otwarciu terminalu wiersza poleceń. Spróbuj więc wymienić wszystkie pliki i foldery w katalogu domowym systemu Linux za pomocą poniższego polecenia LS, a otrzymasz wszystko. Możesz zobaczyć, mamy niektóre pliki tekstowe i niektóre foldery wymienione.

LS

Przykład 01: Używanie „-a” i „-b”

Z powyższych plików tekstowych przyjrzymy się niektórym z nich i spróbujemy zastosować na nich polecenie GREP. Otwórzmy plik tekstowy „jeden.txt ”najpierw używając popularnego polecenia„ CAT ”jako pod spodem:

$ cat one.tekst

Najpierw zobaczymy określone słowa dopasowywane w tym pliku tekstowym za pomocą polecenia GREP jak poniżej. Szukamy słowa „my” w pliku tekstowym „jeden.txt ”za pomocą instrukcji GREP. Dane wyjściowe pokazuje dwa wiersze z pliku tekstowego o „my” w sobie.

$ grep my.tekst

Tak więc, w tym przykładzie, będziemy wyświetlać wiersze przed i po konkretnym dopasowaniu słowa w niektórych plikach tekstowych. Więc używając tego samego pliku tekstowego „jeden.txt „Dopasowaliśmy słowo„ my ”, wyświetlając 3 wiersze przed nim, jak poniżej. Flaga „-B” oznacza „przed”. Wyjście pokazuje tylko 2 wiersze przed określoną linią słów, ponieważ plik nie ma więcej linii przed wierszem określonego słowa. Pokazuje również te wiersze mające w nich to konkretne słowo.

$ grep -b 3 my.tekst

Użyjmy tego samego słowa kluczowego „my” z tego pliku, aby wyświetlić 3 wiersze po wierszu, które mają słowo „my”. Flaga „-a” przedstawia „po”. Wyjście ponownie pokazuje tylko 2 linie, ponieważ nie ma więcej linii w pliku.

$ grep -a 3 my.tekst

Użyjmy więc nowego słowa kluczowego do dopasowania i wyświetlania linii lub wierszy przed i po linii, w której leży. Używaliśmy więc słowa „można dopasować”. W tym przypadku numery linii są takie same. 3 linie po dopasowanym słowie „mogą” zostały wyświetlone poniżej za pomocą polecenia GREP.

$ grep -a 3 może jeden.tekst

Możesz zobaczyć wyjście pokazane przed wierszami dopasowanego słowa za pomocą słowa kluczowego „Can”. Natomiast pokazuje tylko dwie linie przed wierszem dopasowanego słowa, ponieważ nie ma już więcej linii.

$ grep -b 3 może jeden.tekst

Przykład 02: Używanie „-a” i „-b”

Weźmy kolejny plik tekstowy: „Dwa.txt ”, z katalogu domowego i wyświetl jego zawartość za pomocą poniższego polecenia„ CAT ”.

$ cat dwa.tekst

Wyświetlmy 5 wierszy przed słowem „większość” z pliku „Dwa.txt ”za pomocą polecenia GREP. Wyjście pokazuje 5 linii przed linią zawiera określone słowo.

$ grep -b 5 większość dwóch.tekst

Polecenie GREP wyświetla 5 wierszy po słowa „najbardziej” z pliku tekstowego „Dwa.TXT ”podano poniżej.

$ grep -a 5 większość dwóch.tekst

Zmieńmy słowo kluczowe do przeszukania. Tym razem użyjemy „of” jako słowa kluczowego. Wyświetl 2 wiersze przed słowem „of” z pliku tekstowego „Dwa.TXT ”można wykonać za pomocą poniższego polecenia GREP. Wyjście pokazuje dwa wiersze dla słowa kluczowego „of”, ponieważ jest ono dwa razy w pliku. Zatem wyjście zawiera więcej niż 2 linie.

$ grep -b 2 z dwóch.tekst

Teraz wyświetlanie 2 wierszy pliku „Dwa.txt ”po wierszu zawierającym słowo kluczowe„ of ”można wykonać za pomocą poniższego polecenia. Wyjście ponownie wyświetla więcej niż 2 linie.

$ grep -a 2 z dwóch.tekst

Przykład 03: Używanie „-c”

Kolejna flaga „-C” została użyta do wyświetlania wierszy przed i po dopasowanym słowie. Wyświetlmy zawartość pliku „jeden.txt ”za pomocą polecenia CAT.

$ cat one.tekst

Wybieramy „społeczeństwo” jako słowo kluczowe do dopasowania. Poniższe polecenie GREP wyświetli 2 wiersze przed i 2 wiersze po wierszu zawierającym w nim słowo „społeczeństwo”. Wyjście pokazuje jedną linię przed określoną linią słów i 2 wierszami po niej.

$ grep -c 2 społeczeństwo.tekst

Zobaczmy zawartość pliku „Dwa.txt ”za pomocą poniższego polecenia CAT.

$ cat dwa.tekst

W tej ilustracji używamy „wierszy” jako słowa kluczowego do dopasowania. Wykonaj więc poniższe polecenie. Wyjście pokazuje dwie linie przed i dwie linie po dopasowanym słowie.

$ grep -c 2 wiersze dwa.tekst

Użyjmy jeszcze jednego słowa kluczowego z pliku „Dwa.txt ”do dopasowania. Tym razem spożywamy „naturę” jako słowo kluczowe. Wypróbuj poniższe polecenie, używając „-C” jako flagi o słowie kluczowym „Nature” z pliku „Dwa.tekst". Tym razem wyjście ma więcej niż dwie linie w wyjściu. Ponieważ plik zawiera słowo „natura” więcej niż raz, to jest powód. Słowo kluczowe „Nature”, które jest najważniejsze, ma dwie linie wcześniej i dwie linie po nim. Podczas gdy drugi pasował do tego samego słowa kluczowego, „Natura” ma przed nim dwie linie, ale nie ma po nim żadnych linii, ponieważ jest w ostatnim wierszu pliku.

$ grep -c 2 wiersze dwa.tekst

Wniosek

Z powodzeniem wyświetlamy linie przed i po konkretnym słowie podczas korzystania z instrukcji GREP.