É possível que alguns dos arquivos tenham finais de linha do Windows (DOS) em vez de novas linhas do Unix? Tente executar dos2unix neles antes de fazer o diff .
Tanto o dos2unix quanto o fromdos (no meu sistema, o primeiro é um link simbólico para o último) aceitam nomes de arquivos na linha de comando e fazem a conversão no lugar. Você pode usar a opção -b para fazer um backup. Se você tiver muitos desses arquivos em vários diretórios, poderá usar find para processá-los.
find /dir/to/start -type f -name "foo*" -exec fromdos -b {} +
Então, quando estiver satisfeito, tudo correu bem:
find /dir/to/start -type f -name "foo*.bak" -delete
para excluir os backups.