comparison - texto - Manera de generar diferencias entre dos archivos(preferiblemente usando la línea de comandos)
programa para comparar archivos y carpetas (3)
Estoy familiarizado con herramientas como tkDiff y WinMerge y estoy consciente de cómo ver la diferencia entre dos archivos.
Lo que estoy buscando hacer es producir un informe de elementos en un archivo que no están presentes en otro.
Por ejemplo:
File1 contiene:
apple
cool
dude
flan
File2 contiene:
apple
ball
cool
dude
elephant
Quiero producir un informe que contenga:
ball
elephant
O, mejor aún, un informe como este:
+ball
+elephant
-flan
¿Alguien sabe de una herramienta que pueda hacer esto? Preferiblemente con opciones de línea de comando.
La función de informe en WinMerge no está muy lejos de lo que me gustaría, pero no hay una opción de línea de comandos para hacer esto (que yo sepa).
Gracias por adelantado.
Es probable que desee la utilidad de comunicación Unix . Las versiones de Windows están incluidas en gnuwin32.
NOMBRE
comm - compare two sorted files line by line
SINOPSIS
comm [OPTION]... FILE1 FILE2
DESCRIPCIÓN
Compare sorted files FILE1 and FILE2 line by line. With no options, produce three-column output. Column one contains lines unique to FILE1, column two contains lines unique to FILE2, and column three contains lines common to both files. -1 suppress lines unique to FILE1 -2 suppress lines unique to FILE2 -3 suppress lines that appear in both files
Esto podría funcionar para usted (diferencia de GNU):
diff -u file1 file2 | sed -n ''1,2d;/^[-+]/p''
+ball
-flan
+elephant
Para comparar datos con el símbolo del sistema puede utilizar
COMP / a / l D: / Folder1 / data.txt D: / Folder2 / data.txt
Aquí hay otras opciones para comparar archivos y carpetas con el símbolo del sistema .