GNU Diffutils

(Redirección desde «Diffutils»)

Diffutils son unha serie de programas en modo texto que permiten traballar no relacionado coas diferencias entre uns ficheiros e outros.

Pode utilizarse diff para amosar as diferencias entre dous ficheiros. diff amosa as diferencias entre os ficheiros liña por liña en diversos formatos, que poden escollerse mediante parámetros. Esta serie de diferencias entre os ficheiros adoitan chamarse “diff” ou patch («parche» en inglés).

En caso de que os ficheiros sexan idénticos, diff non adoita imprimir nada na consola. No caso de ficheiros binarios cun contido non textual, diff adoita limitarse a indicar que son distintos.

Unha forma habitual de chamar a esta orde para xerar un parche é a seguinte:

diff -Naur ORIXINAL MODIFICADO > PARCHE

Onde:

ORIXINAL é a ruta do ficheiro orixinal,
MODIFICADO é a ruta do ficheiro que contén modificacións sobre o orixinal, e
PARCHE é a ruta onde se vai gardar o parche cos cambios do MODIFICADO sobre o ORIXINAL.

Pódese utilizar cmp para amosar en que bytes e liñas difiren dous ficheiros. cmp tamén pode amosar todos os caracteres en que difiren os dous ficheiros, un por un. En caso de que os ficheiros sexan iguais, non fai nada. A súa sintaxe fundamental sería a seguinte:

cmp /ruta/a/un/ficheiro /ruta/a/outro/ficheiro

diff3 amosa as diferencias entre tres ficheiros. Cando dúas persoas ficheron cambios independentemente nun ficheiro orixinal común, esta orde informa das diferencias entre o orixinal e as dúas versións distintas, e produce un ficheiro cos cambios realizados ao ficheiro orixinal por parte das dúas persoas indicando en que puntos conflicten as dúas edicións.

sdiff permite mesturar dous ficheiros de maneira interactiva.