Quero comparar linhas em dois arquivos, mas para minimizar o ruído na saída, quero que apenas as diferenças reais nas linhas sejam impressas.
Por exemplo, dados os dois arquivos abaixo:
a.txt
a b c d e f g h i j k l m n o p q r s t u v w x y z
b.txt
a B c d e f g h i j k l m n o p q r s t u v w x y z
(a diferença entre eles é o caso da letra b
)
Eu quero que a saída seja algo como:
[-b-]{+B+}
Atualmente, a melhor abordagem que encontrei foi usar git diff --word-diff
, mas gera toda a linha:
a [-b-]{+B+} c d e f g h i j k l m n o p q r s t u v w x y z
Existe uma maneira mais direta de fazer isso, além de analisar manualmente a saída? Além disso, idealmente, eu preferiria usar algo mais comumente disponível do que git diff
, por exemplo, uma ferramenta shell POSIX que não exigiria que o usuário instalasse pacotes extras.
b
e, B
portanto, é óbvio? Entendo que essa era provavelmente a diferença real, mas, para fins da pergunta, você pode facilitar.