Jak wyszukać wiersz zawierający określony ciąg w Bash?

1

Mam plik zawierający pewną liczbę wierszy, chcę poszukać określonego ciągu, a jeśli plik go zawiera, chcę wydrukować inną linię z tego samego pliku. na przykład załóżmy, że mam plik:

aaa
bbb
ccc

Powiedzmy, że szukam bbb, a jeśli go znajdę, chcę wydrukować następujący wiersz (w przykładzie ccc).

Wiem, że dzięki grep mogę łatwo wyszukać „bbb”, ale jakiej komendy mogę użyć, aby wydrukować inną linię tego samego pliku?

Danny
źródło

Odpowiedzi:

3

Dostępne są następujące opcje grep:

-A NUM daje NUMpo linie.

-B NUM * da ci NUMwcześniej linie.

-C NUM oba ( NUMwiersze przed i NUMwiersze po).

Gdzie NUM jest liczbą całkowitą.

W twoim przypadku grep -A 1 bbb file.txtda ci ccc.

jcbermu
źródło