Ver diferencias entre archivos de texto con diff y similares

Cuando deseamos ver si existen diferencias entre archivos de texto utilizando la línea de comandos, disponemos de varias utilidades de acuerdo a nuestras necesidades. En este post hablaremos del comando diff y al finalizar recordaremos cómo buscar otras herramientas similares que podrán servirnos de utilidad si deseamos comparar otro tipo de archivos que no contengan texto plano.

Ver diferencias entre archivos por línea con diff

Supongamos que tenemos los siguientes archivos que contienen una especie de inventario de productos (descripción/cantidad):

archivo1:

producto1, 5
producto2, 10
producto3, 2
producto4, 5
producto5, 1
producto6, 0

archivo2:

producto2, 10
producto3, 2
producto4, 6
producto5, 1
producto6, 4
producto7, 8

Cuando necesitemos comparar estos dos archivos de texto e identificar rápidamente cualquier diferencia entre los mismos, podemos usar el comando diff con la opción -y:

diff -y archivo1 archivo2

El resultado es el mostrado en la Fig. 1:

Ver diferencias entre archivos lado a lado con diff
Figura 1 – Ver diferencias entre archivos lado a lado con diff

Para interpretar el resultado, debemos tener en cuenta que los signos < y > se utilizan para indicar el contenido faltante en un archivo. Por ejemplo, el < que aparece al principio de la segunda columna nos dice que producto1, 5 no aparece en archivo2 (lo mismo sucede con > en la última línea, indicando que producto7, 8 no está en archivo1.

Por otra parte, las líneas en donde se identificaron diferencias aparecen con una barra vertical |. Por ejemplo, en la cuarta línea leemos producto4, 5 en archivo1 mientras que en archivo2 es producto4, 6 (¿ven las diferencias?). Si queremos suprimir las líneas comunes entre ambos archivos, podemos utilizar la opción --suppress-common-lines. Comparemos la Fig. 1 con la Fig. 2 para ver cómo cambia el resultado:

Suprimir líneas comunes al comprar dos archivos de texto con diff
Figura 2 – Suprimir líneas comunes al comprar dos archivos de texto con diff

Una lista más completa de utilidades para visualizar diferencias entre archivos utilizando la línea de comandos, con descripciones, puede verse mediante

apropos diff

como lo explicamos en un post anterior.

Espero que la información brindada en esta oportunidad les haya resultado útil. ¡Nos leemos en breve!

Un comentario en «Ver diferencias entre archivos de texto con diff y similares»

Responder a Eriel