Jak mogę wyszukać nowe linie (lub koniec linii) w ramach wyszukiwania, używając mniej?
Na przykład chciałbym szukać length=9\n
, ale nie chcę po prostu wyszukiwać, length==9
ponieważ uzyskałbym pasujące wyniki length=90\n
.
Używam GNU bash, wersja 4.0.33 (1) -release (x86_64-pc-linux-gnu) na Ubuntu 9.10 (Karmic Koala)
Próbowałem przeczytać przyjazną instrukcję, ale napisała
/pattern
Wyszukaj w pliku N-ty wiersz zawierający wzorzec. N domyślnie wynosi 1. Wzorzec jest wyrażeniem regularnym, rozpoznawanym przez bibliotekę wyrażeń regularnych dostarczoną przez twój system. Wyszukiwanie rozpoczyna się w drugim wyświetlonym wierszu (ale zobacz opcje -a i -j, które to zmieniają).
i nie wiem jak RTFM poza tym.
/\<length=9\>
znajdzie „długość = 9” w dowolnym miejscu linii bez dopasowania „długość = 90” lub „stringlength = 9”. Zobaczman 7 regex
iman grep
więcej.Odpowiedzi:
Możesz to zrobić:
Wzór zastępuje
pattern
, ale$
musi pozostać, każe wyszukiwaniu szukać wzoru, a następnie końca linii.Więc zrobiłbyś:
źródło