comunidades

Herramientas de Comparación de Archivos (Diff) para Linux

Los programadores, desarrolladores web e incluso los escritores a menudo necesitan comparar diferentes versiones del mismo código o texto para mantenerse al tanto de los cambios. Una forma eficaz de hacerlo es con una herramienta de diferencias: una aplicación que compara archivos o carpetas, muestra las diferencias entre ellos y le ayuda a crear un nuevo archivo fusionando o parcheando sus versiones. Generalmente, puede comparar archivos en Linux con una herramienta de línea de comandos o utilizando una aplicación independiente.

Diff, colordiff y wdiff

Diff

La utilidad de línea de comandos llamada diff forma parte del paquete «diffutils» presente en los repositorios de las principales distribuciones de Linux. Es una herramienta sencilla que compara archivos línea por línea y también puede comparar archivos en dos carpetas. Si los archivos seleccionados son idénticos, diff no imprimirá ninguna salida, y puede modificar sus opciones (por ejemplo, para ignorar el espacio en blanco o las letras mayúsculas y minúsculas).

La sintaxis general es

diff -option filename1 filename2

Los resultados se pueden mostrar en dos columnas con la opción -y o –side-by-side. Obtenga la lista completa de opciones de diferenciación escribiendo:

diff --help

El paquete «diffutils» también contiene diff3 – una herramienta que puede comparar tres archivos y fusionar tres versiones de un archivo. Una gran guía para sacar el máximo provecho de las diferencias se puede encontrar en el sitio web oficial .

Colordiff

Colordiff es técnicamente un «wrapper» o un script que modifica la salida de diff coloreándola según sus preferencias en el fichero de configuración («/etc/colordiffrc» o «/home/user/.colordiffrc»). El paquete colordiff está disponible en los repositorios de la mayoría de las distribuciones.

Colordiff tiene las mismas opciones que diff, y puede utilizarlo directamente escribiendo:

colordiff -opciones nombrearchivo1.txt nombrearchivo2.txt

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.

o bien canalizando la salida de diff a la misma:

diff -u nombrearchivo1.txt nombrearchivo2.txt | colordiff

Wdiff

Otra herramienta similar y un poco más especializada es wdiff que puede comparar archivos palabra por palabra (define una palabra como cualquier cosa rodeada de espacio en blanco). Wdiff puede ignorar el caso (-i), proporcionar estadísticas (-s) sobre los cambios en archivos dados, y enfatizar las diferencias con el formato (-p). También puede combinar colordiff y wdiff para obtener una visión general codificada por colores de las diferencias de palabras entre archivos:

wdiff -n nombrearchivo1.txt nombrearchivo2.txt | colordiff

Tenga en cuenta que debe introducir la ruta completa si los archivos no están en la carpeta activa. Para más información sobre la wdiff, visite el sitio web oficial .

Modos de diferenciación en Vim y Emacs

Los editores de texto más populares, Vim y Emacs, tienen un modo de diferencias incorporado. Para activarlo en Vim, puedes iniciar el programa con el comando vimdiff y añadir hasta cuatro archivos para comparar:

vimdiff file1 file2[file3[file4]]

Vim abre cada archivo en una ventana separada y resalta las diferencias. Puede configurar cómo dividir cada ventana para obtener una mejor visión general.

Los usuarios de Emacs pueden elegir entre una extensión diff (llamada «modo principal») o Ediff, un modo ligeramente más avanzado que le permite cambiar interactivamente los archivos comparados. Al igual que Vim, Emacs puede mostrar archivos en ventanas separadas, una al lado de la otra, y resaltar las diferencias. También puede utilizarlo para fusionar archivos, y también funciona con archivos comprimidos.

Herramientas de Comparación de Archivos (Diff) para Linux


Ambos editores de texto tienen una sintaxis relativamente compleja que requiere cierto aprendizaje, pero vale la pena ya que son muy potentes y completamente personalizables.

Kdiff3

Kdiff3 es un frontend gráfico para diff, lo que significa que se basa en diff y ofrece todas sus opciones. Le permite comparar dos archivos con un archivo base y fusionar, dividir y unir carpetas enteras, archivos o sólo partes de texto seleccionadas. Kdiff3 se integra bien con KDE (soporta menús de servicio Dolphin), pero funcionará en todas las distribuciones de Linux, Windows y Mac OS X. El cuadro de diálogo «Ajustes -> Configurar Kdiff3» permite establecer parámetros para la comparación de archivos en carpetas (por fecha, tamaño, comparación binaria o contenido completo) y entre archivos (ignorar mayúsculas, números y espacio en blanco). Puede alternar entre el ajuste de línea y el ajuste de línea para obtener una mejor visión general y ajustar la configuración de color para marcar las diferencias.

Herramientas de Comparación de Archivos (Diff) para Linux


Lo bueno de Kdiff3 es que le permite pegar texto de cualquier archivo directamente en la ventana principal, eliminando la necesidad de crear archivos cuando sólo desea comparar el texto «sobre la marcha». Un manual detallado de Kdiff3 es disponible en línea .

Difuso

Herramientas de Comparación de Archivos (Diff) para Linux


A primera vista parece simple, pero Diffuse es tan poderoso como otras herramientas de esta lista. Puede comparar un número ilimitado de archivos en una vista lado a lado y resumir las diferencias. Puede editar archivos directamente desde Difundir y realizar fusiones y concordancia de líneas. También soporta el resaltado (limitado) de sintaxis y ofrece integración con varios sistemas de control de versiones – incluyendo Git, Mercurial y Subversion – para ayudarle a mantener los archivos sincronizados. Diffuse funciona en Linux, Windows y Mac OS X, y puede descargar los paquetes de instalación desde el sitio web del proyecto .

Difuminado

Esta aplicación funciona en Linux, Windows y OS X, se integra bien con el Explorador de Windows y ofrece paquetes de instalador para algunas distribuciones. Puede editar archivos dentro de Diffmerge, fusionar versiones de archivos automáticamente y exportar las diferencias a un nuevo archivo. Puede comparar hasta tres archivos y dos carpetas y mostrar si los archivos son idénticos, lo que puede ser útil cuando se comprueba si una copia de seguridad rsync se realizó correctamente.

Herramientas de Comparación de Archivos (Diff) para Linux


El cuadro de diálogo de configuración le permite definir reglas personalizadas para manejar varios tipos de archivos. Diffmerge es gratuito, pero ocasionalmente le pedirá una clave de registro de pago. Por suerte, pueden elegir otra herramienta de esta lista, ya que todas ofrecen más o menos las mismas opciones.

Combinar

Combine características de otras herramientas de diferenciación en una interfaz construida por Python. Puede descargar el código fuente y la versión de Windows , y encontrar el paquete en los repositorios si es usuario de Ubuntu, Fedora o SUSE. Lo bueno de Meld es que no tienes que instalarlo – simplemente ejecuta el ejecutable y úsalo como una aplicación portátil.

Herramientas de Comparación de Archivos (Diff) para Linux


Meld soporta la edición de archivos, el filtrado con expresiones regulares, la comparación y fusión de tres archivos, y la comparación de dos o tres carpetas y su contenido, y también proporciona una visualización útil de las diferencias mediante flechas y códigos de colores. Si usas un sistema de control de versiones como Git, Mercurial o SVN, Meld puede gestionar tus archivos, comprobar si hay cambios y realizar confirmaciones y actualizaciones. Meld se actualiza regularmente, así que podemos esperar nuevas características en futuras versiones.

Otras opciones

Si no tiene ganas de instalar una nueva aplicación para este propósito y no necesita funciones avanzadas de comparación de archivos, puede probar algunas de las muchas online diff tools que son gratuitas y sólo requieren un navegador web.

¿Utiliza una herramienta de diferenciación que no está en esta lista? Cuéntanoslo en los comentarios.

Crédito de la imagen: Teaser image source

Fuente: este post proviene de Vida Tecno, donde puedes consultar el contenido original.
¿Vulnera este post tus derechos? Pincha aquí.
¿Qué te ha parecido esta idea?

Esta idea proviene de:

Y estas son sus últimas ideas publicadas:

Etiquetas: Linux

Recomendamos

Relacionado

Linux

Recuperar archivos del sistema de archivos Ext3/Ext4 con Linux Live CD

En un momento u otro, cada usuario del ordenador ha borrado accidentalmente un archivo de su sistema. Esto es particularmente cierto para los usuarios de Linux, donde un comando como rm -rf . elimina inmediatamente todos los archivos y carpetas del directorio actual. La recuperación de archivos desde una partición FAT/NTFS de Windows ha sido discutida previamente . Este artículo analiza los pasos ...

Linux

Cómo renombrar archivos en Linux

Renombrar archivos no es una operación particularmente avanzada; siempre y cuando se haga en un pequeño número de archivos, por lo general no requiere herramientas especiales. Sin embargo, cuando hay toda una carpeta de fotos de las vacaciones del año pasado esperando ser renombradas, sería prudente considerar algunos trucos o aplicaciones para ahorrar tiempo. Hay dos enfoques generales para renom ...

Linux

8 Vim Plugins para mejorar su productividad

Ah, Vim. Lo amamos o lo odiamos, muchos desarrolladores juran por este poderoso editor de texto basado en consola, mientras que otros lo usaron una vez y no quieren volver a usarlo nunca más. Vim existe desde 1991 y no muestra signos de desvanecerse. Incluso estoy escribiendo este artículo en Vim. Si has usado Vim antes, sabes que hay un poco de curva de aprendizaje. Se necesita paciencia para apr ...

Linux

Cómo contar el número de archivos en un directorio en Linux

Cuando tiene una carpeta llena de archivos (y subcarpetas), es posible que tenga que averiguar cuántos archivos hay en total. Contar archivos y carpetas uno por uno no es ciertamente una opción, especialmente cuando hay formas menos horripilantes de hacerlo, como las siguientes. 1. Comprobar con el Administrador de Archivos Empecemos por el camino más fácil. Simplemente abra el directorio en un ge ...

Internet

Cómo convertir el Explorador de archivos de Windows 10 al de Windows 7

De vuelta en Windows 8, Microsoft modificó el aspecto del Explorador de archivos con nuevos iconos, nuevas características, menú de la cinta, etc. De hecho, incluso cambiaron el nombre de Explorador de Windows a Explorador de archivos, lo que tiene mucho sentido. Obviamente, hay algunos a los que no les gusta el nuevo estilo del Explorador de archivos. Si realmente le gusta el Explorador de archiv ...

Linux

Revisión de aplicaciones Linux: Edición KDE Backintime

Los usuarios de Mac OS X disfrutan de una ingeniosa utilidad de Apple llamada Time Machine, mientras que los usuarios de los últimos sistemas operativos de Microsoft tienen Windows Backup. Mi instalación de Kubuntu Precise, curiosamente, no vino con una utilidad de respaldo instalada fuera de la caja. Pero, como siempre, los usuarios de Linux tenemos una variedad de opciones para elegir. Siendo el ...

Linux

Cómo ocultar fácilmente archivos y carpetas en Linux

¿Alguna vez ha querido ocultar un archivo o una carpeta en su sistema de archivos Linux pero no tiene idea de cómo hacerlo? No se preocupe, esto no es tan complicado como parece y se puede hacer con bastante rapidez y eficiencia. En esta guía repasaremos las formas más sencillas de ocultar archivos y carpetas en Linux. Además de ocultar cosas, veremos cómo revelar estos elementos ocultos tanto en ...

Linux

NitroShare le permite compartir archivos fácilmente con ordenadores de la misma red

Con una conexión estable a Internet, puede compartir archivos con otros a través del correo electrónico, Dropbox o cualquier otro sitio web de servicios de compartición de archivos. Sin embargo, ¿qué pasa si estás en una red local sin acceso a Internet, o simplemente quieres enviar rápidamente un archivo a otro ordenador sin tener que ir a la web y volver? En tal situación, NitroShare es el adecua ...

Linux

Cómo sincronizar fácilmente las carpetas en su ordenador con Synkron

Hay ocasiones en las que necesita sincronizar varias carpetas en su ordenador. Por ejemplo, es posible que tenga varias carpetas que desee sincronizar con Dropbox. En lugar de crear un enlace simbólico o copiar los archivos a la carpeta Dropbox cada vez que haga cambios, puede utilizar un servicio de sincronización para sincronizar la(s) carpeta(s) con la carpeta Dropbox de modo que los cambios re ...

Linux

Cómo actualizar tu Dropbox a la versión 1.0 en Ubuntu

El equipo de Dropbox ha actualizado recientemente su popular software Dropbox a la versión 1.0 y ha eliminado su etiqueta beta. Esta nueva versión viene con sincronización selectiva (elegir qué carpetas sincronizar en cada equipo), mejor utilización del ancho de banda y uso de la memoria. En Windows/Mac, sólo tienes que descargar el software correspondiente y desinstalarlo en tu sistema (asegúrate ...