Powiedz, że mam następujący plik:
$ cat test
test line 1
test line 2
line without the search word
another line without it
test line 3 with two test words
test line 4
Domyślnie grep
zwraca każdy wiersz zawierający wyszukiwane hasło:
$ grep test test
test line 1
test line 2
test line 3 with two test words
test line 4
Przekazanie --color
parametru grep
spowoduje, że podświetli on część wiersza pasującą do wyrażenia wyszukiwania, ale nadal zwraca tylko wiersze zawierające wyrażenie. Czy istnieje sposób, aby uzyskać grep
wyjście każdej linii w pliku źródłowym, ale wyróżnić dopasowania?
Mój obecny straszny hack, aby to osiągnąć (przynajmniej w plikach, które nie mają ponad 10000 kolejnych wierszy bez dopasowań) to:
$ grep -B 9999 -A 9999 test test
Jeśli grep
nie można tego osiągnąć, czy istnieje inne narzędzie wiersza polecenia, które oferuje tę samą funkcjonalność? Bawiłem się ack
, ale wydaje się, że nie ma na to również opcji.
-C 9999
zamiast. -A 9999 -B 9999
Zawsze robię:grep -C 9999 pattern file