GNU/Linux >> Tutoriales Linux >  >> Linux

Ejemplos de comandos diff en Linux

El comando diff se usa para comparar archivos de texto. El comando muestra los dos archivos y las diferencias entre ellos. Usando varios símbolos, la salida sugiere cómo puede cambiar un archivo para que sea idéntico al otro. Cada símbolo tiene un significado especial.

El símbolo menor que (<) con una línea después significa que esa línea debe eliminarse del primer archivo porque no aparece en el segundo. El símbolo mayor que (>) seguido de una línea significa que esa línea debe agregarse desde el segundo archivo. Además, el comando diff también indica los números de línea de cada archivo que se vería afectado por las operaciones de eliminación, adición y cambio.

Sintaxis

La sintaxis del comando diff es:

# diff {file name 1} {file name 2}

OPCIONES DE COMANDO diff

El comando diff tiene varias opciones que le permiten especificar la naturaleza de la salida.

Opción Descripción
-b Ignore las diferencias de espaciado.
-i Ignore las diferencias entre mayúsculas y minúsculas.
-t Expandir los caracteres de tabulación en las líneas de salida.
-w Ignore las diferencias de espaciado y las tabulaciones.
-c Muestre una lista de diferencias con tres líneas de contexto.
-u Resultados de salida en modo unificado, que presenta un formato más optimizado.

Ejemplos de comandos diff

1. Compara archivos (enumera los cambios para convertir `old_file` en `new_file`):

# diff old_file new_file

2. Compara archivos, ignorando los espacios en blanco:

# diff --ignore-all-space old_file new_file

3. Compara archivos, mostrando las diferencias una al lado de la otra:

# diff --side-by-side old_file new_file

4. Compare archivos, mostrando las diferencias en formato unificado (como lo usa `git diff`):

# diff --unified old_file new_file

5. Comparar directorios de forma recursiva (muestra los nombres de los diferentes archivos/directorios, así como los cambios realizados en los archivos):

# diff --recursive old_directory new_directory

6. Compara directorios, mostrando solo los nombres de los archivos que difieren:

# diff --recursive --brief old_directory new_directory

7. Cree un archivo de parche para Git a partir de las diferencias de dos archivos de texto, tratando los archivos inexistentes como vacíos:

# diff --text --unified --new-file old_file new_file > diff.patch

8. diff también puede comparar directorios:

# diff dir1 dir2

que compara cualquier archivo con el mismo nombre en esos directorios y enumera todos los archivos que aparecen en un directorio pero no en el otro. Para comparar jerarquías de directorios completas de forma recursiva, utilice la opción -r:

# diff -r dir1 dir2

que produce un informe (potencialmente masivo) de todas las diferencias.

Conclusión

El comando diff compara dos archivos línea por línea o dos directorios. Al comparar archivos de texto, diff puede producir informes detallados de sus diferencias. Para archivos binarios, diff simplemente informa si difieren o no. Para todos los archivos, si no hay diferencias, diff no produce ningún resultado.


Linux
  1. 7 ejemplos de comandos Linux df

  2. 8 ejemplos de comandos TR de Linux

  3. 7 ejemplos de comandos de parches para aplicar archivos de parches de diferencias en Linux

  4. Ejemplos de comandos rm en Linux

  5. Ejemplos de comandos ps en Linux

Comando Rm en Linux

Comando lsof en Linux (10 ejemplos)

Ejemplos de comandos diff de Linux

Ejemplos de comandos id en Linux

Comando lsof en Linux con ejemplos

Comando Linux comm con ejemplos