Manuales para la línea de comandos

Man » Manual de diff en línea - documentación detallada en línea para la página del manual de diff

🌍
diff - compara archivos línea por línea

SINOPSIS

diff [OPCIÓN]... ARCHIVOS

DESCRIPCIÓN

Compara ARCHIVOS línea por línea.

Los argumentos obligatorios para las opciones largas también son obligatorios para las opciones cortas.

--normal
muestra una salida diff normal (el valor predeterminado)

-q, --brief
informa solo cuando los archivos son diferentes

-s, --report-identical-files
informa cuando dos archivos son iguales

-c, -C NUM, --context[=NUM]
muestra NUM (el valor predeterminado es 3) líneas de contexto copiado

-u, -U NUM, --unified[=NUM]
muestra NUM (el valor predeterminado es 3) líneas de contexto unificado

-e, --ed
muestra un script ed

-n, --rcs
muestra un diff en formato RCS

-y, --side-by-side
muestra en dos columnas

-W, --width=NUM
muestra como máximo NUM (el valor predeterminado es 130) columnas de impresión

--left-column
muestra solo la columna izquierda de las líneas comunes

--suppress-common-lines
no muestra las líneas comunes

-p, --show-c-function
muestra en qué función C se encuentra cada cambio

-F, --show-function-line=RE
muestra la línea más reciente que coincide con RE

--label ETIQUETA
utiliza ETIQUETA en lugar del nombre del archivo y la marca de tiempo (se puede repetir)

-t, --expand-tabs
expande los tabuladores en espacios en la salida

-T, --initial-tab
hace que los tabuladores se alineen agregando un tabulador al principio

--tabsize=NUM
los tabuladores se detienen cada NUM (el valor predeterminado es 8) columnas de impresión

--suppress-blank-empty
suprime los espacios o tabulaciones antes de las líneas de salida vacías

-l, --paginate
pasa la salida a 'pr' para paginarla

-r, --recursive
compara recursivamente cualquier subdirectorio que se encuentre

--no-dereference
no siga los enlaces simbólicos

-N, --new-file
trata los archivos ausentes como archivos vacíos

--unidirectional-new-file
trata los primeros archivos ausentes como archivos vacíos

--ignore-file-name-case
ignora las mayúsculas y minúsculas al comparar los nombres de los archivos

--no-ignore-file-name-case
tiene en cuenta las mayúsculas y minúsculas al comparar los nombres de los archivos

-x, --exclude=PAT
excluye los archivos que coinciden con PAT

-X, --exclude-from=ARCHIVO
excluye los archivos que coinciden con cualquier patrón en ARCHIVO

-S, --starting-file=ARCHIVO
comienza con ARCHIVO al comparar directorios

--from-file=ARCHIVO1
compara ARCHIVO1 con todos los operandos; ARCHIVO1 puede ser un directorio

--to-file=ARCHIVO2
compara todos los operandos con ARCHIVO2; ARCHIVO2 puede ser un directorio

-i, --ignore-case
ignora las diferencias de mayúsculas y minúsculas en el contenido del archivo

-E, --ignore-tab-expansion
ignora los cambios debidos a la expansión de tabuladores

-Z, --ignore-trailing-space
ignora los espacios en blanco al final de la línea

-b, --ignore-space-change
ignora los cambios en la cantidad de espacios en blanco

-w, --ignore-all-space
ignora todos los espacios en blanco

-B, --ignore-blank-lines
ignora los cambios en los que todas las líneas están en blanco

-I, --ignore-matching-lines=RE
ignora los cambios en los que todas las líneas coinciden con RE

-a, --text
trata todos los archivos como texto

--strip-trailing-cr
elimina el retorno de carro final en la entrada

-D, --ifdef=NOMBRE
muestra el archivo fusionado con las diferencias '#ifdef NOMBRE'

--GTYPE-group-format=GFMT
formatea los grupos de entrada GTYPE con GFMT

--line-format=LFMT
formatea todas las líneas de entrada con LFMT

--LTYPE-line-format=LFMT
formatea las líneas de entrada LTYPE con LFMT

Estas opciones de formato proporcionan un control preciso sobre la salida de diff, generalizando -D/--ifdef.

LTYPE es 'old', 'new' o 'unchanged'.
GTYPE es LTYPE o 'changed'.

GFMT (solo) puede contener:

%< líneas de FILE1

%> líneas de FILE2

%= líneas comunes a FILE1 y FILE2

%[-][WIDTH][.[PREC]]{doxX}LETRA
especificación estilo printf para LETRA

LAS LETRAS son las siguientes para el nuevo grupo, en minúsculas para el grupo antiguo:

F primera línea

L última línea

N número de líneas = L-F+1

E F-1

M L+1

%(A=B?T:E)
si A es igual a B, entonces T, sino E

LFMT (solo) puede contener:

%L contenido de la línea

%l contenido de la línea, excluyendo cualquier salto de línea final

%[-][WIDTH][.[PREC]]{doxX}n
especificación estilo printf para el número de línea de entrada

Tanto GFMT como LFMT pueden contener:

%% %

%c'C' el carácter único C

%c'\OOO'
el carácter con código octal OOO

C el carácter C (otros caracteres se representan a sí mismos)

-d, --minimal
intenta encontrar un conjunto de cambios más pequeño

--horizon-lines=NUM
mantén NUM líneas del prefijo y sufijo comunes

--speed-large-files
asume archivos grandes y muchos pequeños cambios dispersos

--color[=WHEN]
color en la salida; WHEN es 'never', 'always' o 'auto'; --color sin más significa --color='auto'

--palette=PALETTE
los colores que se utilizarán cuando --color esté activo; PALETTE es una lista separada por dos puntos de las capacidades de terminfo

--help muestra esta ayuda y sale

-v, --version
muestra información de la versión y sale

FILES son 'FILE1 FILE2' o 'DIR1 DIR2' o 'DIR FILE' o 'FILE DIR'. Si se da --from-file o --to-file, no hay restricciones en FILE(s). Si un FILE es '-', lee la entrada estándar. El estado de salida es 0 si las entradas son iguales, 1 si son diferentes, 2 si hay problemas.

AUTOR

Escrito por Paul Eggert, Mike Haertel, David Hayes, Richard Stallman y Len Tower.

INFORMES DE ERRORES

Informe los errores a: _ Página de inicio de GNU diffutils: [https://www.gnu.org/software/diffutils/] Ayuda general para usar el software GNU: [https://www.gnu.org/gethelp/]

Copyright © 2025 Free Software Foundation, Inc. Licencia GPLv3+: GNU GPL versión 3 o posterior [https://gnu.org/licenses/gpl.html]. Este es un software libre: puedes cambiarlo y redistribuirlo. No hay GARANTÍA, en la medida permitida por la ley.

VÉASE TAMBIÉN

wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

La documentación completa de diff se mantiene como un manual de Texinfo. Si los programas info y diff están correctamente instalados en su sitio, el comando

info diff

debería darle acceso al manual completo.