How to find content differences between files

Neste artigo rápido, só vou reproduzir de forma genérica o uso do recurso “DIFF”, que nos ajuda a identificar diferença entre arquivos no S.O.

Conteúdo de exemplo:

root@solariSWIV:~# cat arquivo1.ora
PALMEIRAS TEM MUNDIAL
root@solariSWIV:~# cat arquivo2.ora
PALMEIRAS NAO TEM MUNDIAL

Neste primeiro exemplo, o output do comando nos retorna a letra “c”, que representa “change”. Ou seja, foi identificado uma linha no arquivo 1 que deve ser alterada para o conteúdo do arquivo 2:

root@solariSWIV:~# diff arquivo1.ora arquivo2.ora
1c1
< PALMEIRAS TEM MUNDIAL
---
> PALMEIRAS NAO TEM MUNDIAL

Novo conteúdo para o segundo exemplo:

root@solariSWIV:~# cat arquivo1.ora
PALMEIRAS NAO TEM MUNDIAL
LINHA QUE NAO EXISTE NO OUTRO ARQUIVO
root@solariSWIV:~# cat arquivo2.ora
PALMEIRAS NAO TEM MUNDIAL

Agora o output mostra a letra “d”, de “delete”. Ou seja, para que os arquivos ficassem idênticos, seria necessário deletar a linha 2 do arquivo 1:

root@solariSWIV:~# diff arquivo1.ora arquivo2.ora
2d1
< LINHA QUE NAO EXISTE NO OUTRO ARQUIVO

Último teste (invertendo a linha 2 para o arquivo 2):

root@solariSWIV:~# cat arquivo1.ora
PALMEIRAS NAO TEM MUNDIAL
root@solariSWIV:~# cat arquivo2.ora
PALMEIRAS NAO TEM MUNDIAL
LINHA QUE NAO EXISTE NO OUTRO ARQUIVO

Agora temos a letra “a”, de “append”. Para que os arquivos ficassem iguais, seria necessário adicionar a linha 2 do arquivo 2 ao arquivo 1:

root@solariSWIV:~# diff arquivo1.ora arquivo2.ora
1a2
> LINHA QUE NAO EXISTE NO OUTRO ARQUIVO
root@solariSWIV:~#

Leave a Comment

Your email address will not be published.