A procura por linhas que começam com @
fornece o número de blocos de alterações que diff
encontraram. Eles costumavam ser mais de uma linha.
Por acaso, há uma ferramenta para contar as estatísticas de um diff: diffstat
( site , página man ).
Conte inserções e exclusões:
$ diff -u test1 test2 | diffstat
test2 | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
Combine inserções e exclusões no mesmo bloco apenas para operações únicas de "modificação":
$ diff -u test1 test2 | diffstat -m
test2 | 2 -!
1 file changed, 1 deletion(-), 1 modification(!)
Além disso, você pode usar diffstat -t
para obter uma saída tabular de apenas o número de linhas modificadas.
Os arquivos de teste:
$ cat test1
a
b
c
d
$ cat test2
a
x
d