Fusión de archivos más fácil: uso del comando diff3 en Linux

watch 4m, 24s
views 2

10:53, 09.04.2026

Contenido del artículo
arrow

  • Comprensión del comando diff3
  • Visión general de la sintaxis diff3
  • Opciones más frecuentes
  • Cómo identificar las diferencias entre archivos en Linux
  • Combinación de archivos con diff3 en Linux
  • Integración de cambios de varios archivos con diff3
  • Manejo de conflictos durante las fusiones diff3
  • Reflexiones finales

La fusión de archivos puede ser mucho más fácil con herramientas útiles como el comando diff3. Los administradores de sistemas y programadores que trabajan constantemente con varias versiones de un archivo y desean acelerar este proceso pueden utilizar diff3. Este comando es necesario para especificar las diferencias en varias versiones del mismo archivo.

Gracias a nuestro conocimiento práctico, hemos decidido explicar cómo funcionan los fundamentos de diff3, y compartir algunos ejemplos útiles para que pueda entender claramente esta herramienta y su caso de uso en el sistema Linux.

Comprensión del comando diff3

El comando Diff3 funciona comparando los archivos, determinando las diferencias entre ellos y mostrando esta información de una forma bastante fácil de entender para el usuario.

Los principales casos de uso de esta herramienta son los siguientes:

  • La fusión de varios archivos puede realizarse automáticamente.
  • La diversidad entre los archivos se puede encontrar fácilmente.
  • Hacer frente a los conflictos que se producen durante la fusión de varias versiones.

 También están disponibles los comandos diff y sdiff que se pueden utilizar para la fusión de versiones, pero la peculiaridad de diff3 es que se puede trabajar con 3 versiones distintas y se pueden fusionar fácilmente en un archivo específico.

Visión general de la sintaxis diff3

Así es como se ve el uso estándar del comando:

diff3 [opciones] f1 f2 f3

En esta línea, f1 especifica la versión inicial del fichero, f2 - la 2ª versión, y f3 - la 3ª.

Opciones más frecuentes

Esta es la lista de las opciones más utilizadas para este comando, algunas de ellas son las siguientes:

  • -m: fusión de archivos que se realiza automáticamente.
  • -e: esta opción se debe hacer para la creación del script ed que es necesario para aplicar los cambios.
  • -3: muestra sólo las diferencias entre los 3 ficheros.
  • -A: añade todos los cambios disponibles de los 3 ficheros.
  • -E: la fusión de los archivos incluso en caso de que haya un conflicto específico.  

Cómo identificar las diferencias entre archivos en Linux

En caso de que tenga 3 versiones del mismo fichero y los datos sean ligeramente diferentes, puede compararlas fácilmente. Una vez hecho esto, obtendrá una salida con información sobre cada línea en cada versión, en caso de que se añada una nueva línea en algún lugar verá esta información, o en caso de que una línea específica se cambie en una de esas versiones, también obtendrá estos datos.

Para la comparación de estos archivos utilice el siguiente comando:

 diff3 f1.txt f2.txt f3.txt

Una vez que utilice este comando, obtendrá una salida con algunos cambios que se hicieron en las 3 versiones. Normalmente, los datos se mostrarán para cada versión con dichas cifras:

  • 1:2c: significa que la primera versión tiene cambios en la 2ª línea y también verá el contenido de esta línea.
  • 2:3c: significa que la segunda versión del fichero tiene cambios en la 3ª línea y verá esta línea específica.
  • 3:2,3c: significa que la versión 3 tiene cambios en las líneas 2 y 3.

Combinación de archivos con diff3 en Linux

Para combinar todas estas 3 versiones de un archivo, puede utilizar la opción -m. Esto significa que se creará un nuevo archivo con todos los cambios.

diff3 -m f1.txt f2.txt f3.txt

La salida de este comando mostrará dónde hay conflictos en las líneas. Por ejemplo, en caso de que las 3 versiones tengan cambios en la misma línea, puede editar manualmente y guardar la información que realmente se necesita.  

Integración de cambios de varios archivos con diff3

Para integrar los cambios de todas las versiones y crear ed script, deberá utilizar la opción -e como se indica a continuación:

diff3 -e f1.txt f2.txt f3.txt > scriptfile

Usando esta línea, creará un archivo scriptfile que incluye el script ed, que puede usarse de la siguiente manera:

ed f1.txt < fichero_script

Esto cambiará la primera versión del archivo, de acuerdo con las modificaciones realizadas en scriptfile, y puede comprobar si los cambios se han realizado con el siguiente comando:

cat f1.txt

Esto mostrará qué líneas hay en la versión f1, por lo que será mucho más fácil combinar los archivos automáticamente.

Manejo de conflictos durante las fusiones diff3

El conflicto durante la fusión se produce cuando hay una diferencia en la misma ubicación del archivo. Tales conflictos aparecen en la salida para que pueda comprobar dónde se produjo y cambiar manualmente todo. He aquí un proceso paso a paso que se debe hacer para manejar el conflicto:

  • Abra el archivo donde se produjo el conflicto.
  • Cambie el archivo de la manera necesaria, puede editar/eliminar las líneas.
  • No olvide guardar el archivo.

Reflexiones finales

El diff3 es un gran método con la ayuda del cual se puede trabajar con varias versiones del mismo archivo. Usted puede detectar fácilmente las diferencias entre las versiones y en caso de que haya una necesidad, también puede fusionar las 3 versiones.

Compartir

¿Te ha resultado útil este artículo?

Ofertas populares de VPS

oferta

-20%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
400 GB HDD
Bandwidth
Bandwidth
Unlimited
KVM-HDD 16384 Linux

50 /mes

/mes

Facturado mensualmente

oferta

-20%

CPU
CPU
2 Xeon Cores
RAM
RAM
512 MB
Space
Space
10 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 512 Linux

5.2 /mes

/mes

Facturado cada 3 meses

oferta

-20%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-wKVM-SSD 4096 Windows

72 /mes

/mes

Facturado mensualmente

oferta

-20%

CPU
CPU
6 Epyc Cores
RAM
RAM
8 GB
Space
Space
100 GB NVMe
Bandwidth
Bandwidth
Unlimited
wKVM-NVMe 8192 Windows

28.99 /mes

/mes

Facturado mensualmente

oferta

-20%

CPU
CPU
3 Epyc Cores
RAM
RAM
2 GB
Space
Space
20 GB NVMe
Bandwidth
Bandwidth
Unlimited
KVM-NVMe 2048 Linux

8.8 /mes

/mes

Facturado mensualmente

oferta

-20%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
75 GB SSD
Bandwidth
Bandwidth
Unlimited
10Ge-wKVM-SSD 2048 Windows

37.4 /mes

/mes

Facturado mensualmente

-10.2%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
150 GB SSD
Bandwidth
Bandwidth
100 Mbps
DDoS Protected SSD-KVM 16384 Linux

123 /mes

/mes

Facturado cada 6 meses

oferta

-20%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 4096 Linux

15.95 /mes

/mes

Facturado mensualmente

-15%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
80 Mbps
DDoS Protected SSD-wKVM 8192 Windows

101 /mes

/mes

Facturado cada 12 meses

oferta

-20%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
1 TB
wKVM-SSD 1024 Metered Windows

17 /mes

/mes

Facturado mensualmente

Otros artículos sobre este tema

cookie

¿Acepta las cookies y la política de privacidad?

Utilizamos cookies para asegurar que damos la mejor experiencia en nuestro sitio web. Si continúa sin cambiar la configuración, asumiremos que acepta recibir todas las cookies del sitio web HostZealot.