Ich habe "test1.csv" und es enthält
200,400,600,800
100,300,500,700
50,25,125,310
und test2.csv und es enthält
100,4,2,1,7
200,400,600,800
21,22,23,24,25
50,25,125,310
50,25,700,5
jetzt
diff test2.csv test1.csv > result.csv
ist anders als
diff test1.csv test2.csv > result.csv
Ich weiß nicht, welche Reihenfolge richtig ist, aber ich möchte etwas anderes. Die beiden obigen Befehle geben etwa Folgendes aus
2 > 100,4,2,1,7
3 2,3c3,5
4 < 100,300,500,700
5 < 50,25,125,310
6 \ No newline at end of file
7 ---
8 > 21,22,23,24,25
9 > 50,25,125,310
Ich möchte nur den Unterschied ausgeben, daher sollte results.csv so aussehen
100,300,500,700
100,4,2,1,7
21,22,23,24,25
50,25,700,5
Ich habe versucht , diff -q
und , diff -s
aber sie haben es nicht getan. Ordnung spielt keine Rolle, wichtig ist, dass ich nur den Unterschied sehen möchte, weder> noch <noch Leerzeichen.
grep -FvF
habe den Trick bei kleineren Dateien gemacht, nicht bei großen
Die erste Datei enthält mehr als 5 Millionen Zeilen, die zweite Datei enthält 1300 Zeilen.
Die Datei results.csv sollte also ~ 4.998.700 Zeilen ergeben
Ich habe auch versucht, grep -F -x -v -f
was nicht funktioniert hat.
50,25,125,310
ist für beide Dateien gleich .. Sie müssen das von Ihrer gewünschten Ausgabe entfernen ..