Eu quero obter o número correto de linhas na saída do diff (especificamente com -y
e --suppress-common-lines
opções). Usando um simples wc -l
faz não trabalho, porque se ambos os arquivos terminar sem uma nova linha e sua última linha é diferente wc -l
não vai contar a última linha.
Existe uma solução simples e eficiente para evitar isso?
Por exemplo, se você tiver os arquivos "a":
a
b
c
d #no newline here
E B":
a
b
c
D #no newline here
A saída é:
$ diff -y --suppress-common-lines a b | wc -l
0
O que obviamente é incorrecta, uma vez diff
faz a saída de uma linha.