diff
El comando se utiliza para comparar las diferencias entre dos archivos o directorios. Compara el contenido de los archivos línea por línea y muestra diferencias en diferentes líneas. diff
El uso y las opciones del comando son los siguientes :
Sintaxis básica:
diff [选项] 文件1 文件2
Opciones comunes:
-c
o--context
: muestra diferencias de contexto (3 líneas por defecto)-u
o--unified
: mostrar diferencias en formato uniforme-r
o--recursive
: comparar recursivamente archivos en directorios-q
O--brief
: solo muestra si hay una diferencia en el archivo, no muestra el contenido específico de la diferencia-i
o--ignore-case
: ignorar las diferencias en caso-w
o--ignore-all-space
: ignore todos los espacios en blanco para detectar diferencias-B
o--ignore-blank-lines
: ignorar las diferencias en líneas en blanco--ignore-file-name-case
: ignorar las diferencias en el caso del nombre de archivo
Uso de ejemplo:
-
Compare las diferencias de dos archivos y muestre las diferencias contextuales (3 líneas predeterminadas):
diff file1.txt file2.txt
-
Muestre las diferencias de archivos usando un formato uniforme:
diff -u file1.txt file2.txt
-
Compare las diferencias de dos directorios (comparación recursiva):
diff -r dir1 dir2
-
Muestre solo si hay una diferencia en el archivo y no muestre el contenido específico de la diferencia:
diff -q file1.txt file2.txt
diff
El formato de salida del comando es el siguiente:
>
El símbolo indica que la línea solo aparece en el segundo archivo.<
El símbolo indica que la línea solo aparece en el primer archivo.---
marcas entre diferentes párrafos de los dos documentos.***
Marcas entre párrafos idénticos en ambos documentos.
Cuando se utiliza diff
el comando para comparar archivos, el resultado muestra las diferencias entre los archivos en forma de texto. A continuación se muestra un ejemplo del resultado:
4c4
< This is line 4 in file1.txt.
---
> This is line 4 in file2.txt.
El resultado anterior indica que hay una diferencia en la cuarta línea de los dos archivos:
<
Indica que la línea solo aparece en el primer archivo (archivo1.txt).>
Indica que la línea solo aparece en el segundo archivo (archivo2.txt).-
El delimitador indica la diferencia entre dos archivos.- El número antes de la primera flecha indica el número de línea en el primer archivo.
- El número después de la segunda flecha indica el número de línea en el segundo archivo.
En el ejemplo anterior, la cuarta línea file1.txt
diría "Esta es la línea 4 del archivo 1.txt" en el y file2.txt
"Esta es la línea 4 del archivo 2.txt" en el archivo .