Comparar archivos en linux con el comando diff y la herramienta de Vim, Vindiff.
El comando diff (diferencia), se usa para mostrar las diferencias entre archivos de linux, su funcionamiento es simple, compara los archivos línea por línea buscando caracteres que no sean iguales. A diferencia de otros comandos similares, diff tan solo compara e indica donde se encuentran las desigualdades localizadas.
Existen ciertos símbolos e instrucciones especiales que nos pueden ayudar a que los archivos sean idénticos, pero no es nuestro caso. Si quieres conocer esos argumentos especiales, revisa el manual del comando.
man diff
Comparar archivos en linux Comando diff
Comparar archivos en linux con el comando diff
El comando Diff está disponible en casi todas las distribuciones Linux de forma predeterminada, por tanto no es necesario instalar nada. Comparar archivos con diff es tarea sencilla, observa su sintaxis.
diff [archivo1] [archivo2]
En nuestro ejemplo tenemos dos archivos, demo1.txt y demo2.txt. El primero contiene el siguiente texto.
Me
gusta
sololinux
El segundo…
sololinux
gusta
mucho
Ejecutamos nuestro comando de ejemplo.
diff demo1.txt demo2.txt
Veremos algo similar a…
Comparar archivos con diff
Comando Vimdiff
El comando Vimdiff forma parte del editor vim, por lo que para poder usar vimdiff necesitamos tener vim instalado en nuestro sistema. Vim es uno de los editores preferidos por los profesionales del sector, a pesar de ello y debido a su curva de aprendizaje… poco a poco se está viendo relegado por otros más sencillos, como puede ser nano.
Si no tienes Vim instalado, tranquilo, seguro que lo tienes en los repositorios oficiales de tu sistema. Lo instalamos.
Debian, Ubuntu, Linux Mint y derivados:
sudo apt install vim
Rhel, Oracle, Centos, Fedora y derivados:
sudo yum install vim # o sudo dnf install vim
La sintaxis de Vimdiff es similar a la del comando diff.
vimdiff [archivo1] [archivo2]
Un ejemplo…
vimdiff demo1.txt demo2.txt
Vemos algo similar a la siguiente imagen.
Comparar archivos con Vimdiff
Como puedes observar, al comparar archivos con «vimdiff» la salida es mucho más visual que con el comando diff. Explicamos los colores.
- Líneas en rojo: Las líneas de color rojo nos indican que existen diferencias parciales, es decir, una parte de la línea marcada, no toda.
- Líneas en azul y guiones: El color azul nos dice que la línea entera no coincide.
- Líneas en color de terminal: El texto coincide.
Ya comentamos anteriormente, que el manejo del editor Vim no es fácil para los recién llegados a linux. Como último apunte de este artículo, te propongo algunos atajos útiles de la herramienta «vimdiff».
- ]c : Saltar a la siguiente diferencia.
- [c : Volver a la anterior diferencia.
- dp : Insertar la diferencia seleccionada en una nueva ventana.
- do : Obtener los cambios de otra ventana respecto a la actual.
- CTRL-W + CTRL-W : Pasar de una ventana a otra cuando están divididas.
- zo : Abre el contenido duplicado de los archivos.
- zc : Cierra el contenido duplicado de los archivos.
- :diffupdate : Busca de nuevo en los archivos localizando las modificaciones.
Canales de Telegram: Canal SoloLinux – Canal SoloWordpress
Espero que este artículo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales. Comparar archivos en linux con el comando diff.