Di 'che ho il seguente file:
$ 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
Per impostazione predefinita, grep
restituisce ogni riga che contiene il termine di ricerca:
$ grep test test
test line 1
test line 2
test line 3 with two test words
test line 4
Passando il --color
parametro a grep
si evidenzierà la parte della riga che corrisponde all'espressione di ricerca, ma restituisce comunque solo le righe che contengono l'espressione. C'è un modo per ottenere grep
l'output di ogni riga nel file sorgente, ma evidenziare le corrispondenze?
Il mio attuale attacco terribile per raggiungere questo obiettivo (almeno sui file che non hanno più di 10000 righe consecutive senza corrispondenze) è:
$ grep -B 9999 -A 9999 test test
Se ciò grep
non è possibile, esiste un altro strumento da riga di comando che offre le stesse funzionalità? Ho armeggiato ack
, ma non sembra avere nemmeno un'opzione per questo.
-C 9999
al posto di -A 9999 -B 9999
.Faccio sempre:grep -C 9999 pattern file