Compare dois textos diferentes - encontrados iguais e diferentes

Compare dois textos diferentes - encontrados iguais e diferentes

Quero comparar os dois textos diferentes. Por favor, verifique os detalhes abaixo e o que eu preciso

O conteúdo do 1º texto:

111 xx1
222
333
555

O conteúdo do 2º texto:

333
111 xxx
222
888

Minhas perguntas

Estou pesquisando um comando que possa imprimir os resultados abaixo:

"Atualização:111xxx"

"Excluir:555"

"Adicionar:888"

O mais importante é que mostre o título "atualizar","Excluir","Adicionar".

Responder1

você está procurando

diff <(sort file1) <(sort file2)

que vai dar

1c1
< 111XZ
---
> 111 xxx
3a4
> 888

com "<" para dados no arquivo 1 e ">" para dados no arquivo 2.

Nota sobre a saída, esta é uma pseudo ednotação.

  • csignifica mudar de linha
  • asignifica anexar
  • dsignifica excluir (não no exemplo acima)

você pode fazer

diff <(sort file1) <(sort file2) |
awk '$1 == "<" {$1=" in file1 } $1== ">" { $1="in file2" } { print } '

(logo no final da linha depois de |)

Responder2

Você poderia usar diffpara isso. Você apenas precisa se acostumar com o formato de saída. Existe um guia práticoaqui. Para algo com uma GUI existefundir.

informação relacionada