Un conseil :
Lors de l'utilisation de grep --color=always
, les chaînes réelles transmises au canal suivant seront modifiées. Cela peut conduire à la situation suivante :
$ grep --color=always -e '1' * | grep -ve '12'
11
12
13
Même si l'option -ve '12'
devrait exclure la ligne médiane, ce ne sera pas le cas car il y a des caractères de couleur entre 1
et 2
.
grep
désactive parfois la sortie couleur, par exemple lors de l'écriture dans un tube. Vous pouvez remplacer ce comportement avec grep --color=always
La bonne ligne de commande serait
grep --color=always WORD * | grep -v AVOID
C'est assez verbeux, sinon vous pouvez simplement ajouter la ligne
alias cgrep="grep --color=always"
à votre .bashrc
par exemple et utilisez cgrep
comme le grep coloré. Lors de la redéfinition de grep
vous pourriez rencontrer des problèmes avec des scripts qui reposent sur une sortie spécifique de grep
et n'aime pas le code d'échappement ascii.