DIFF(1)

NOMBRE
diff - compara archivo línea por línea

SINOPSIS
diff [OPCION]... ARCHIVOS

DESCRIPCIÓN
Compara ARCHIVOS línea por línea.

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

--normal
    produce un diff normal (predeterminado)

-q, --brief
    indica solo si los archivos difieren

-s, --report-identical-files
    notifica cuándo dos archivos son idénticos

-c, -C NUM, --context[=NUM]
    muestra NÚM (por omisión 3) líneas de contexto

-u, -U NUM, --unified[=NUM]
    muestra NÚM (por omisión 3) línea de contexto unificado

-e, --ed
    produce un script ed

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

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

-W, --width=NUM
    muestra como mucho NÚM columnas de impresión (por omisión 130)

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

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

-p, --show-c-function
    muestra en qué función de C está cada cambio

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

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

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

-T, --initial-tab
    hace que los tabuladores se alineen anteponiendo uno

--tabsize=NUM
    los topes de tabulación están separados por NÚM columnas de impresión (por omisión, 8)

--suppress-blank-empty
    suprime espacios o tabs antes de una línea vacía

-l, --paginate
    pasa la salida a través de 'pr' para paginarla

-r, --recursive
    compara recursivamente cualesquier subdirectorios encontrados

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

-N, --new-file
    trata los archivos que no existan como vacíos

--unidirectional-new-file
    trata los archivos originales que no existan como vacíos

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

--no-ignore-file-name-case
    considera distintas mayúsculas y minúsculas cuando compara los nombres de archivos

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

-X, --exclude-from=ARCHIVO
    excluye los archivos que coincidan con alguna expresión regular de FICHERO

-S, --starting-file=ARCHIVO
    comienza por ARCHIVO cuando se comparan directorios

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

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

-i, --ignore-case
    descarta las diferencias entre mayúsculas y minúsculas en el contenido de los ficheros

-E, --ignore-tab-expansion
    descarta cambios debidos a expansiones de tabs

-Z, --ignore-trailing-space
    descarta espacio en blanco al final de línea

-b, --ignore-space-change
    descarta las diferencias en la cantidad de espacio en blanco

-w, --ignore-all-space
    descarta los espacios en blanco

-B, --ignore-blank-lines
    descarta los cambios en líneas completamente vacías

-I, --ignore-matching-lines=RE
    descarta las líneas que coincidan con EXPR-REG

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

--strip-trailing-cr
    elimina los retornos de carro finales en la entrada

-D, --ifdef=NOMBRE
    genera un fichero combinado que muestra las diferencias con '#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 el resultado

    de diff, generalizando -D/--ifdef.

LTYPE es 'old' (antiguo), 'new' (nuevo) o 'unchanged' (sin cambios).
    GTYPE es como LTYPE o 'changed' (cambiado).

    GFMT (solamente) puede contener:

%<  líneas del FICHERO1

%>  líneas del FICHERO2

%=  líneas comunes a FICHERO1 y FICHERO2

%[-][ANCHO][.[PRECISIÓN]]{doxX}LETRA
    especificación printf para LETRA

    Las LETRAs pueden ser como siguen para grupos nuevos (en minúsculas para grupos antiguos):

F   número de la primera línea

L   número de la ú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 en caso contrario E

    LFMT (solamente) puede contener:

%L  contenido de la línea

%l  contenido de la línea, excluyendo caracteres de nueva línea finales

%[-][ANCHO][.[PRECISIÓN]]{doxX}n
    especificación en estilo printf para el número de línea de entrada

    Tanto GFMT como LFMT pueden contener:

%%  %

%c'C'
    el carácter C

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

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

-d, --minimal
    se esfuerza en encontrar un grupo de cambios menor

--horizon-lines=NUM
    mantiene NÚM líneas de prefijos y sufijos comunes

--speed-large-files
    supone que los ficheros son grandes y los cambios son numerosos, pequeños y dispersos

--color[=CUÁNDO]
    colorea la salida; la variable CASO puede ser 'never' (nunca), 'always' (siempre) o 'auto' (por defecto). 'plain' es sinónimo de --color='auto'

--palette=PALETA
    indica lo colores a usar cuando se indica la opción --color; PALETA consiste en una lista de capacidades de terminfo

--help
    muestra la ayuda y finaliza

-v, --version
    muestra la versión del programa y finaliza

FICHEROS puede ser 'FICHERO1 FICHERO2' o 'DIRECTORIO1 DIRECTORIO2' o 'DIRECTORIO FICHERO' o 'FICHERO DIRECTORIO'. Si se da --from-file o --to-file, no hay restricciones en FICHERO(s). Si un FICHERO es '-', lee la entrada estándar. El estado de salida es 0 si las entradas son iguales, 1 si son diferentes, 2 en caso de problema.

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

INFORMAR DE ERRORES
Comunicar errores en el programa a: bug-diffutils@gnu.org
GNU diffutils página inicial: <https://www.gnu.org/software/diffutils/>
Ayuda general sobre el uso de software de GNU: <https://www.gnu.org/gethelp/>

COPYRIGHT
Copyright © 2025 Free Software Foundation, Inc. Licencia GPLv3+: GNU GPL versión 3 o posterior <https://gnu.org/licenses/gpl.html>.
Esto es software libre: usted es libre de cambiarlo y redistribuirlo. NO HAY GARANTÍA, en la medida permitida por la legislación.

VÉASE TAMBIÉN
wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

La documentación completa de diff está en formato Texinfo. Si info y diff están bien instalados en su equipo, la orden

    info diff

debería mostrarle el manual completo.

TRADUCCIÓN
La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es> y Marcos Fouces <marcos@debian.org>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.