Se você tiver acesso ao GNU diff
, poderá usar o --X-group-format
options para obter esse efeito sem quaisquer ferramentas adicionais:
diff --old-group-format=$'\e[0;31m%<\e[0m' \
--new-group-format=$'\e[0;31m%>\e[0m' \
--unchanged-group-format=$'\e[0;32m%=\e[0m' \
file1 file2
Que usa códigos de escape de cor ANSI para obter vermelho e verde, com ANSI-C citando no shell para acessar o \e
escapes.
--old-group-format
e --new-group-format
identificam linhas não correspondentes e inserem-nas entre códigos de redefinição vermelha e colorida usando %<
e %>
, enquanto --unchanged-group-format
insere linhas correspondentes entre os códigos verde e de redefinição.
Você também pode usar --old-line-format
(etc ), à custa de fugas de cores redundantes em todas as linhas: --old-line-format=$'\e[0;31m%L\e[0m'
.