Digamos que tenho o seguinte arquivo:
$ 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
Por padrão, grep
retorna cada linha que contém o termo de pesquisa:
$ grep test test
test line 1
test line 2
test line 3 with two test words
test line 4
Passar o --color
parâmetro para grep
fará com que ele destaque a parte da linha que corresponde à expressão de pesquisa, mas ainda retorna apenas as linhas que contêm a expressão. Existe uma maneira de obter grep
todas as linhas no arquivo de origem, mas realce as correspondências?
Meu terrível truque atual para fazer isso (pelo menos em arquivos que não têm mais de 10000 linhas consecutivas sem correspondências) é:
$ grep -B 9999 -A 9999 test test
Se grep
não for possível, existe outra ferramenta de linha de comando que ofereça a mesma funcionalidade? Eu brinquei com isso ack
, mas também não parece ter uma opção.
-C 9999
no lugar de -A 9999 -B 9999
.Eu sempre faço:grep -C 9999 pattern file