Wenn die Dateien sortiert sind, tun Sie dies
comm -23 fileP.txt fileE.txt
comm
vergleicht zwei sortierte Dateien und sucht nach Zeilen, die sie gemeinsam haben. Angenommen, diese Datei mit Farben, deren Namen mit Konsonanten beginnen:
blue green purple red white yellow
und diese Liste von Farben, deren Namen mit Vokalen enden:
blue indigo orange purple white
Der Befehl comm colors1 colors2
erzeugt diese Ausgabe:
blue green indigo orange purple red white yellow
Dabei gilt:
Die erste Spalte enthält Farben, die mit Konsonanten beginnen und enden (in, colors1
jedoch nicht colors2
), die zweite Spalte enthält Farben, die mit Vokalen beginnen und enden (in, colors2
jedoch nicht colors1
), und die dritte Spalte enthält Farben, die mit Konsonanten beginnen und mit Vokalen enden (in beiden colors1
und colors2
). Für Ihre Dateien (in Ihrer Frage gezeigt) wird comm fileP.txt fileE.txt
produziert
test@test.com:testtest test@test.com0:testtest0 test@test.com1:testtest1 test@test.com2:testtest2 test@test.com3:testtest3 test@test.com4:testtest4 test@test.com5:testtest5
Die Optionen sind etwas nicht intuitiv: -23
bedeutet, die zweite und dritte Spalte zu unterdrücken, wobei nur die erste angezeigt wird (Zeilen, die sich in der ersten Datei befinden, nicht aber in der zweiten). So,
$ comm -23 fileP.txt fileE.txt test@test.com1:testtest1 test@test.com4:testtest4
Beachten Sie, dass dies nicht richtig funktioniert, wenn die Dateien nicht sortiert werden. Wenn die Dateien nicht sortiert sind, sortieren Sie sie.