Un consiglio:
Quando si utilizza grep --color=always
, le stringhe effettive passate alla pipe successiva verranno modificate. Questo può portare alla seguente situazione:
$ grep --color=always -e '1' * | grep -ve '12'
11
12
13
Anche se l'opzione -ve '12'
dovrebbe escludere la linea di mezzo, non lo farà perché ci sono caratteri colorati tra 1
e 2
.
grep
a volte disabilita l'output del colore, ad esempio quando si scrive su una pipe. Puoi sovrascrivere questo comportamento con grep --color=always
La riga di comando corretta sarebbe
grep --color=always WORD * | grep -v AVOID
Questo è piuttosto prolisso, in alternativa puoi semplicemente aggiungere la riga
alias cgrep="grep --color=always"
al tuo .bashrc
per esempio e usa cgrep
come il grep colorato. Quando si ridefinisce grep
potresti incontrare problemi con gli script che si basano sull'output specifico di grep
e non mi piace il codice di escape ascii.